Skip to main content

Full text of "CBM 8-Bit Magazine Index: Compute's Gazette Special Section"

See other formats


fel 


11 PRODUCTIVITY PACKAGES 

¢ 6 HARDWARE PRODUCTS 

© 8 ENTERTAINMENT TITLES 

e 2 SPECIAL TECHNOLOGY AWARDS 
AND THE ENVELOPE, PLEASE... 


© GREAT PC GOLF 
¢ GAME DESIGN SECRETS 


| 
i 


OF THE YEAR 


HOT 
WINDOWS STUFF 
eAMIPRO 3.0 
© MICROSOFT SOUND 
Sy oheMi 
“BORLAND 
C++ 3.1 


64/128 VIEW 


Warning: This column contains 
material that some Commodore users 


may find disturbing. 
Tom Netsel 


here’s bad news for 
Commodore users this 
month: RUN magazine 
is gone! 
As | write this column in the 
middle of October, I've just 
confirmed that one of the 
grand old magazines dedi- 
cated to the Commodore 64 
and 128 has ceased publica- 
tion. The November/Decem- 
ber 1992 issue of RUN is its 
final edition. 

“We tried our best. We 
gave it a good fight,” said 
Dennis Brisson, editor-in- 
chief of RUN. “It was a diffi- 
cult business decision to 
make. We regret having to 
leave. We've made a lot of 
strong friendships in the 
Commodore community.” 

The decision to close the 
pages on the IDG publica- 
tion came shortly after the 
November/December issue 
went to press, Brisson said. 
As a result, he was unable 
to inform the readers of the 
magazine's demise. In our tel- 
ephone conversation, Bris- 
son said that IDG, RUN's par- 
ent company, would send a 
letter to subscribers to in- 
form them of the magazine's 
termination and to make an 
offer to fulfill outstanding sub- 
scription obligations. 

RUN closes its pages 
with issue number 99 after 
ten years of publishing arti- 
cles, programs, and tips for 
Commodore 8-bit owners. It 
joins the ranks of Ahoy, Com- 
modore, Transactor, and oth- 
er publications that once 
thrived in a robust market of 
Commodore products, sub- 
scribers, and advertisers. 
But new products and adver- 
tisers are in short supply in 
a computer market dominat- 
ed by IBM and a host of PC 
clones. Trying to serve a ma- 
ture Commodore market in 


difficult economic times 
proved to be less than prof- 
itable for IDG, a large pub- 
lishing company that special- 
izes in computer-related mag- 
azines. 

Just a few years ago 
when the 8-bit market was 
the center of computer activ- 
ity, RUN, then a monthly mag- 
azine, peaked at 228 pag- 
es. As interest in computers 
tilted more in favor of MS- 
DOS, RUN was forced to 
cut its number of pages and 
frequency of publication. In 
its final stages, RUN was re- 
duced to 64 pages, pub- 
lished every two months. 

Brisson, who with other 
staff members will be assum- 
ing new duties at IDG's Ami- 
gaWorld magazine, said no 
decision had been made as 
to whether or not RUN 
would maintain its area on 
QuantumLink, the Commo- 
dore-specific information 
service. Managed by Tim 
Walsh, the magazine's tech- 
nical manager, the RUN ar- 
ea has offered programs for 
downloading, a message 
base, and a variety of other 
services. Brisson said he 
would be talking with Q- 
Link officials shortly. If the 
section were to continue, Br- 
isson said he felt that any 
support he or Walsh could of- 
fer would be limited. 

RUN and Gazette were 
competitors—we sought the 
same advertisers and sub- 
scribers. But in a time when 
Commodore resources are 
growing thin, | had hoped 
that there would be room in 
the Commodore community 
for both of us. Over the 
years, RUN provided its read- 
ers with a wealth of informa- 
tion about the Commodore 
64 and 128, and | hate to 
see it go. It'll be missed. 0 


GAZETTE 


64/128 VIEW G-1 


After 99 issues, the presses stop at RUN magazine. 
By Tom Netsel. 


THANKS FOR THE MEMORY G-3 
Take a look at RAM expansion units. 

By John Elliott. 

REVIEWS 6-8 
Wild Streets, Custom Titles, Swap, and more. 
WORLD VIEW G-14 
The Commodore scene in East Germany. 

By Matthias Matting. 

FEEDBACK G-16 
Questions, answers, and comments. 

MACHINE LANGUAGE G-18 


Use this program to read any file and count its bytes. 
By Jim Butterfield. 


BEGINNER BASIC G-20 
Beware of the pitfalls that accompany INPUT. 

By Larry Cotton. 

D’IVERSIONS G-21 


Get a divorce, leave home, or hold a garage sale. 
By Fred D'Ignazio. 


GEOS G-22 
Software for serious GEOS users. 

By Steve Vander Ark. 

PROGRAMMER’S PAGE G-24 


Peek hidden RAM, and more tips from readers. 
By Randy Thompson. 


PROGRAMS 

Ancestry G-25 
Calculease G-28 
Directory Aid G-31 
Cats and Mice G-32 
Fastball G-36 
The Automatic Proofreader G-39 


JANUARY 1993 COMPUTE 


GA 


Tre 64 and 128 work 
well with their limited 
usable programming 

space, but some programs 

are simply too large to load 
entirely into memory. Some 
large programs, such as 

PaperClip Ill and GEOS, 

load sections as needed 

from disk. This technique is 
called virtual memory 
because the information on 
the floppy is treated as part 
of the computer's memory. 

Word processors often use 

this technique with spelling 

checkers, comparing the 
document with a list of 
words on disk. 

The technique is far from 
ideal because disk drives 
are slow and, in the case of 
the 1541, limited in size. 
Disk access speeds can be 
boosted with the use of 
cartridges such as Final 
Cartridge or chips such as 
JiffyDOS, but there can still 
be a lot of disk swapping 
when using programs such 
as GEOS and large 
adventure games. 

Imagine how much faster 
parts of a program could be 
accessed if they were in 
memory chips rather than 
on disk. Instead of the code 
flowing from the disk 
through the drive and its 
serial cable to the CPU, it'd 
be available for use almost 
instantly. 

That's the idea behind 
RAM expansion units 
(REUs). An REU is a 


Thanks 
For 


‘The Memory 


BY JOHN ELLIOTT 


collection of memory chips 
on an external cartridge that 
plugs into a 64 or 128 and 
lets you store thousands of 
additional bytes of data in 
RAM. 

About the time that 
Commodore introduced the 
128, it made available three 
REUs that function as fast 
temporary disk drives: the 
1700 (128K), the 1750 
(512K), and the 1764 
(256K). While the 1700 and 
1750 were designed to 
work only with the 128, the 
1764 was created for the 
64. The power supply for 
the 128 is more powerful 
than that of the 64 and will 
support the load of these 
RAM expanders, but the 
1764 for the 64 comes with 
its own heavy-duty power 
supply. 

The one problem with 
these REUs is that Com- 
modore didn't make enough 
of them. The 1700-series 
REUs are no longer made, 
but they still turn up at swap 
meets and used-computer 
sales. Other REUs are still 
available through a number 
of dealers and sources. 
Tenex, for example, 
markets an REU called the 
1750 Compatible. 


Software 
Compatibility 

The 1700 series has its 
own disk operating system, 
which must be loaded from 
disk. Because such an 


operating system often 
overwrites the memory 
used by software, many 
REUs are incompatible with 
programs that haven't been 
designed with an REU in 
mind. 

The 128 has a larger 
collection of programs that 
can use an REU than does 
the 64. The graphics- 
oriented programming 
language, BASIC 8, can 
store images in an REU. 
Some 128 programs, such 
as Digital Artist and 
MasterPaint for the 128D, 
use an REU to store either 
fonts or graphics. Several 
128 versions of word 
processors, such as Fleet 
System IV and Fontmaster 
128, use an REU as a disk 
drive, which allows for faster 
spell-checking. 

PaperClip Ill, Pocket 
Writer Ill for the 128, and 
GEOS for the 64 and 128 
use the disk drive as virtual 
memory. When the program 
is larger than the capacity of 
the computer, additional lay- 
ers of the program are 
loaded from disk, swapping 
out unused parts. If the disk 
is an REU, there is no 
noticeable wait while disk 
access. takes place. 
ProTerm 128 uses an REU 
as an extra text buffer. 
Parsec has a graphic 
adventure game for the 
128D or modified 128 which 
can use an REU. Newsmak- 
er 128, a desktop publishing 


program, also puts an REU 
to good use. 

BASIC programmers can 
use LOAD and SAVE 
commands if the REU is 
treated as a second disk 
drive. The 128 SWAP, 
FETCH, and STASH com- 
mands in BASIC 7.0 allow 
direct use of an REU, 
providing the user knows the 
beginning and ending 
memory locations of the 
program to be transferred, 
both in the computer's and 
the REU's memory. 


Cards and Cartridges 
REUs connect via the 
computer's cartridge port, 
and they can share an ex- 
tender card with other 
cartridges. | first bought a 
Navaronne cartridge holder, 
which allows up to four 
cartridges to be connected 
at once, although only one 
can be turned on at a time. | 
subsequently bought an 
Aprospand extender card, 
which allows me to turn on 
four cartridges at once. 
Many cartridges, such as 
Final Cartridge III, are not 
compatible with REUs. 
Other cartridges that are 
primarily archival devices 
can use the REU as a 
second drive for copying 
purposes. Some of these 
include Super Card+, Super 
Snapshot, and Maverick. 
JiffyDOS has a DOS 
wedge, a disk speed-up, and 
a copy program on a chip. 


the 64 and 128 and their drives, it does 
not use the cartridge port. It can use 
an REU for copying purposes. 


GEOS 

GEOS 2.0 for the 64 and 128 
recognizes an REU as a RAM disk. 
Many users place all the programs 
and files they plan to use for a work 
session in their REUs and only use 
their floppy drive to store the results of 
their work session. GEOS typically 
takes about two minutes to load itself 
into memory and its required files into 
an REU. GEOS uses the REU to store 
data that would frequently be 
accessed through the floppy, 
speeding up disk use. 

The shadow RAM option uses an 
REU to speed the action of the floppy. 
A RAM reboot option allows rebooting 
of GEOS after a computer reset, so that 
whatever was in an REU is preserved. 
GEOS will recognize the larger two 
Commodore REUs but not the 1700. 

Two third-party programs that allow 
task switching between GEOS 
applications and/or accessories 
require that an REU be present. 
GeoWizard allows movement from one 
application or accessory to a second, 
with an automatic return to the first 
after the second’s closing. It will do 
this across three disk drives and allow 
access to accessories not normally 
available from within that application. 
GeoWizard requires at least a 512K 
REU. 

The other product, GateWay, per- 
mits instant switching between any 
two accessories and/or applications. 
Switching among drives does require 
changing floppies. GateWay with a 
1700 REU allows task switching and 
the use of three drives. With a 1764 it 
offers a RAM disk but does not allow 
switching or the use of three drives. 
The 1750 offers a RAM disk, task 
switching, and the use of three drives. 


The 512K Barrier 

The RAMDOS program that comes 
with Commodore's REUs doesn't 
recognize memory beyond 512K. 
Extra memory isn't always helpful, 
however. Some software works with 
expanded REUs but doesn't 
recognize the additional memory. 
BASIC on a 128 works with up to one 
megabyte of RAM. The Write Stuff 
word processor will place files in any 
REU, up to two megabytes. JiffyDOS 
also works with expanded cartridges, 
as will the Super Snapshot v5 
cartridges. 


GeoRAM 


Berkeley, now known as GeoWorks, 
sells GeoRAM, which is a 512K car- 


G-4 COMPUTE JANUARY 1993 


tridge that works on both the 64 and 
128. Unlike the Commodore 1700 se- 
ries, it does not require a larger power 
supply for the 64. Normally, it works 
only with GEOS. No other hardware or 
software will recognize it. 

Schnedler Systems’ Turbo Master 
replacement CPU in a cartridge runs 
many 64 programs, including GEOS, 
at four megahertz instead of one meg- 
ahertz. When placed on an extender 
board, it will work with GeoRAM. 
Turbo Master’s designer will soon 
have a special device available that 
will directly link the two cartridges. 


Quick Brown Box 

For several years Brown Boxes has of- 
fered battery-backed cartridges that a 
64 or 128 can load from and save to. 
Quick Brown Boxes (QBBs), as they're 
called, are REUs that contain battery- 
backed nonvolatile RAM. They can 
store dictionary and data files for fast 
access, and they will also work on an 
extender card. QBBs range in size 
from 64K to 256K. The cartridge has a 


reset button and a switch that allows 
changes between 64 and 128 modes. 

Most BASIC programs can be 
saved to and run from the QBB, as 
can some machine language 
programs. Several programs have 
been specifically designed to take 
advantage of the box. A patch is 
available that allows the Easy Working 
spreadsheet to load from the QBB. 
More recently, a spreadsheet program 
was commissioned that not only 
resides in the box but saves the 
spreadsheet and data to the box. 

There's also a 128 full-featured mo- 
dem program. The QBB is compatible 
with JiffyDOS and cooperates on an 
Aprospand extender card with the 
1700-series REUs. The most common- 
ly used program in the QBB is proba- 
bly The Write Stuff word processor, in 
both 64 and 128 versions. While there 
is a version for the 64K box, The Write 
Stuff for larger boxes includes a 
modest spelling checker. A larger 
dictionary is accessible from an REU if 
the QBB and REU are on an 
Aprospand extender card. The Write 
Stuff also uses the REU as a RAM disk 
for saving and loading files, and 
allows a reset so that the contents of 
the REU remain intact. 

The manager program for the QBB 
allows partitioning so that, in addition 
to storing programs, it will save and 
replace whatever is _ being 
programmed. The newest manager 
also makes possible direct saving to 
the box of whatever program is in 
memory. A DOS wedge is also 
present. 

You can designate one program on 
the QBB to load and run automatically 
whenever the computer is turned on. 
With this autobooting feature, my Write 
Stuff is so easy to access that | use it 
even for short notes. With its battery 
backup on my 64, whatever | have 
been typing with The Write Stuff 
remains in memory when the comput- 
er is turned off or loses its power. The 
128 version allows the writer to save 
files to the cartridge. 

Since the QBB doesn't drain the 
computer, the standard 64 power 
supply is sufficient. | am able to carry 
my typing between home and work by 
simply carrying the cigarette 
package-sized box in my jacket. 


CMD RAM Devices 

Creative Micro Designs (CMD) sells 
RAMDrive and RAMLink, two devices 
that allow several megabytes of 
nonvolatile storage for the 64 and 128. 
RAMDrive, like the QBB, is portable. It 
inserts into the cartridge port of a 64 
or 128, or it will cooperate with an REU 
on an extender card. Although 


Only $295 ¢ Aros =| Reea hk Sve 


Fon Grachies Machine 


FUN GRAPHICS MACHINE (FGM) IS AN “ALL-IN-ONE” GRAPHICS 

PROGRAM FOR THE C=64. WHAT CAN BE CREATED WITH FGM IS 

ONLY LIMITED BY YOUR IMAGINATION, 
5 


(mi oo) 


ST A FEW EXAMPLES: 
u 
ci 


Bible Search 3.2 


1. The entire Old & New Testament text on 4-1541/71 disks. 
. An Exhaustive English Concordance on 2-1541/71 disks. 


Indexes every word in the entire Bible; 700,000+ references. 


. Incredible five (5) second look-up time, per/word, per/disk. 

. Instant, automatic spell checking of more than 12,800 words. 

. Wildcard and boolean AND, OR & NOT search options. 

. Search the entire Bible in 5 seconds with 1581 or HD (v 3.52). 


. Money back guaranteed! 


KJV $49.95 | NIV $59.95 | KJV & NIV $90 
Includes: C64 & C128 programs; screen, printer and disk output; 
users guide, disk case. Available on 7-1541/71, or 4-1581 disks. 
"= Any questions? Call or write for more information. 
Also available! Amiga, Bible Search 


SUPPORTS 

g ALL 
CmO_ DRIVE: 
an $ b's 


Big Blue Reader 128/64 - 4.0 


Transfers word processing, text, ASCII, and binary files between 

64/128 and IBM PC compatible 360K 5.25" and 720K 3.5" disks. 

New Version 4.0 features: Transfers ASCII, PET ASCII and Screen 

Code files including: WordWriter, PocketWriter, SpeedScript, PaperClip, 

WriteStuff, GEOS, EasyScript, Fleet System and most others. 

Supports drives # 8-30. New Backup (C128) and Format (1571/1581) 

programs, Reads MS-DOS sub-directories, uses joystick, and more. 
Includes C128 & C64 programs. Requires 1571 or 1581 Disk Drive, 
Big Blue Reader 128/64 - 4.0 only $44.95 


Version 4.0 upgrade, send original BBR disk plus $18. 
Order by check, money order, or COD. US funds only. 
iwahinoinali 


= . No Credit Card orders. 
Canada & Mexico add $4 S/H, Overseas add $10 S/H ($5 BBR) 


SOGWAP Software @ (219)724-3900 


115 Bellmont Road; Decatur, Indiana 46733 


FUN GRAPHIC 
PLEASE STAT! 


MACHINE FULL KEYBOARD OVERLAY ---$3.50 EA 
COMPUTER (C64, C128, Sx-64) OR C64 IS SHIPPED 


FUM GRAPHICS MACHINE DEMO DIS 
WHAT APHICS MACHINE 


FOLL' 0 
FGM FONTS OVER 390 FONT 
Fem CLIP ART VOL.1 Ov) 
Fem CALENDAR TEMPLATE 


FOREIGM ORDERS: FOR 
CANADA/MEXICO $1.00, AUS 
U.S. FUNDS ONLY 


The FGM Connection, P0.Box 2206, Roseburg, OR. 97470 


FOR MORE INFORMATION CALL 503-673-2234 


1A $10.00, ALL OTHERS $5.00 
SORRY NO CHARGE CARDS 


eet 
“Gazette Gallery,” where each month we present the — 
very best in original 64 and 128 artwork, 
So don’t waste another moment. Subscribe to- : 
day to COMPUTE’s Gazette Disk and get 12 issues 
for only $49.95. You save almost 60% off the single- 
issue price. Clip or photocopy and mail completed _ 
coupon today. — Saat 
_ Individual issues of the disk are available for 
$9.95 (plus $2.00 shipping and handling) by writing 
to COMPUTE, 324 West Wendover Avenue, Suite 
200, Greensboro, North Carolina 27408. 


YES! Start my one-year subscription 
to COMPUTE’s Gazette Disk right away 
for only $49.95.* 


O Payment enclosed (check or money order) 


Yes, save time and money! Subscribe to the Gazette 
Disk and get all the exciting, fun-filled Gazette pro- 
grams for your Commodore 64 or 128—already on 
disk! 

Subscribe today, and month after month you'll 


3 Se OCharge OMasterCard O Visa 
get all the latest, most challenging, and fascinating 
Acct. No. Exp. Date 
COMPUTE. Signature = 
New on the Gazette Disk! In addition to the Name 
programs that appear in the magazine, you'll also Nikos 
get outstanding bonus programs. These programs, : 
which are often too large to offer as type-ins, are Sta] ZIP/ 
available only on disk—they appear nowhere else. Province Postal Code 


| 
1 

| 

| 

I 

I 

I 

I 

| 

| 

programs published in the corresponding issue of 
l 

| 

| 

I 

1 

1 

I 

I 

I 


Mail to COMPUTE's Gazette Disk, P.O. Box 3250, Harian, IA 51593-2430 


“Residents of NC and NY, please add appropriate sales tax for your area. Canadian 
orders, add 7% goods and services tax 


As another Gazette Disk extra, check out 


for several days without external 
power. | have been able to carry two 
megabytes of programs and files 
between the computers at home and 
at work with this cartridge. 

RAMLink also has its own power 
supply. An optional battery pack 
allows retention of memory contents 
for several hours during power 
disruptions. RAMLink has a pass- 
through port that accepts cartridges. 
An REU port accepts RAMDrive, 
GeoRAM, or the 1700 series. RAMLink 
can be purchased with configurations 
of up to 16 megabytes of storage 
capacity. 

Both devices use a special disk op- 
erating system that permits most pro- 
grams to use the RAM devices as per- 
manent RAM disks. Most REUs work in 
this way only when a program is de- 
signed specifically for them. Two pro- 
grams have been specifically devel- 
oped for this special operating system 
so that they will take advantage of the 
CMD devices. The Write Stuff has a 
CMD version that blends the speed of 
its QBB version with the added fea- 
tures of its floppy disk program. It also 
recognizes the ability of the CMD de- 
vices to create partitions and subparti- 
tions. CMD has developed a version of 
GEOS that will run from either device, 


G-6 COMPUTE JANUARY 1993 


recognize partitions, and allow you to 
perform task switching. 

In comparing the two units, be 
aware that the RAMDrive is designed 
for portability. Its current maximum ca- 
pacity is two megabytes. The only car- 
tridge | could get it to recognize on an 
extender card was my REU. RAMLink 
is not designed to be removed from 
the computer once installed, and it will 
recognize most of my cartridges. Its 
capacity can be expanded up to 16 
megabytes. Both devices will control 
an REU, but when the computer is 
turned off, REU memory is lost. 
RAMLink controls the REU memory, 
which becomes nonvolatile when the 
two devices are connected. 


The Right Unit 

Obviously, this decision must take into 
account what programs are most often 
used and whether instant access is 
important. My own rule of thumb is that 
if | have to wait to load a program, | 
will not use it daily. | use The Write 
Stuff from a QBB every day. | do not 
use GEOS that frequently. While | can 
load GEOS instantly from the QBB, | 
still have to wait two minutes to load 
related files into my REU. | would also 
have instant disk storage and retrieval 
with RAMLink or RAMDrive. If | used 


only GEOS, | would buy GeoRAM and 
expand it. It does not require a special 
power supply below two megabytes, 
and it is the only RAM device that will 
work with the Turbo Master CPU. 

For my situation, one of the CMD 
units looks very attractive. To decide 
whether to choose RAMLink or 
RAMDrive, | will still need to balance 
off portability, compatibility with other 
cartridges, and maximum potentia’ 
memory capacity. 

The 128 has a large number o 
available programs that use RAM 
expansion. In addition to GEOS and 
The Write Stuff, the 64 has severa 
copy programs, cartridges, and 
bulletin board systems that wil 
recognize or reside within a RAM 
device. 

The CMD devices combine the fea- 
tures of REUs with the permanence o! 
the QBB. They also are compatible 
with more programs, both as storage 
mediums and as permanent RAM 
disks, for the storage of virtually any 
created files. 

Availability may be a problem, but 
cost shouldn't be when it comes to 
using a RAM device. An investment 
of between $50 and $300 for a RAM 
device will upgrade your Commodore 
to the point that you can challenge the 


Thousands of Commodore Owners Choose Us 
As Their One Stop Supplier . Here's Why! 


* Great Selection of Front Line Software. 
We stock most major Commodore titles that are still in 
Production. 


* Hardware & Peripherals. 
Although we can't get keyboards and disk drives any longer, 
we can offer disks, modems, cables, interfaces, and much 
more. 


* Closeouts & Bargains. 
We're constantly seeking out those hard to get gems, and 
offering them at prices that would make Scrooge grin. 


* Used Software Trade In Program. 
A Software Support exclusive. It takes a bit of extra work, but 
we don't mind. Another commitment to personalized service. 


* Un-Advertised Specials. 
Our regular customers enjoy VIP service and great bargains 
that are hard to pass up. 


* Expert Technical Support. 
As a regular Software Support customer, you have access to 
the most knowledgeable Commodore technical departments 
in the country. Of this, we're darn proud. 


* Friendly & Courteous Order Takers. 
You'll have a hard time finding order takers as anxious to help 
you as Sandy, Ann and Connie. 


* Fast Order Processing. 
Thanks to our automated computer system, huge inventory 
and effecient shipping staff, most orders are processed the 
same day. 

* Walk In Sales Department. 
We welcome visitors to our warehouse outlet. The same great 
deals are available and best of all, no shipping charges. 

* Worldwide Distributor Of Major Products. 
Ever hear of Maverick, Super Snapshot, Super 1750 Clone, 
and the 1581 Toolkit? We've been actively involved in the 
ground up production and world-wide distribution of these 
and many other fine Commodore products. 


* Purchase From Us With Confidence. 
We were very pleased when the 


SOFTWARE SUPPORT 


INTERNATIONAL 
C-64/128 Specialists For Over Five Years 


Better Business Bureau came to 
us and told us that our outstand- 
ing reputation qualified us as 
members in their organization. 
We're here to stay, not a fly by 
night, here today and gone to- 
morrow outfit. 
* Extensive Catalog. 

Our contacts at other mail order 
companies have told us that pro- 
ducing a catalog such as ours is 
too time consuming and worst 


Check Out These Examples... 


GAMES 

Tony LaRussa Baseball 
Bard’s Tale 3 
Blackjack Academy 
Cutthroats....... 
Test Drive 2 
California Challeng: 
European Challenge 
Muscle Cars. 
Super Cars... 
Jack Nicklaus Golf... 
J.N. Courses 1,2 or 3 
TV Sports Footbal! 
Batman(Arcade Ver, 
Batman(Movie Ver) 
Solo Flight 
Suspect 
ShootEm Up Const. 
BUXTON crycrseessteeeeresttorese 
EDUCATIONAL 
Europe 
World 


Carmen 
Carmen 
Carmen Time... 
Carmen USA... 
Mavis Beacon Typing . 
Donald’s Alphabet. 
Sky Travel ....sssssse+ 
r Perfect Score SAT 
} Songwriter 
PRODUCTIVITY 
Super 1750 Clone 
Dome Accounting... 
Create A Calendar 
Fleet System 2.. 
Graphic Label Wizard 
Home Designer 128.. 
C-128 Graphics Pack 
Mastertype/Writer 
Printshop .... 
Paperclip 3 
Paperclip Publisher 


suPER 1750 


Items Listed Above Do Not Include Shipping. Call Or Write For Your Free 
Catalog Listing Hundreds Of Products And Special Offers For Your 


Computer. Our Order Takers Are On Duty 6:00 a.m. - 5:00 p.m. 
M - F and 7:00 a.m. - 3:00 p.m. Sat. - Pacific Time. 


SOAWARE Software Support Int. 


ofall - too expensive. We say it's 
the least we can do for our cus- 
tomers, and wouldn't have it any 
other way. Simply call or write 
for your free copy. 


‘SOFWARE USA) CANADUN TOLL FREE UNE: 800-956-1175 


CALL TOLL FREE TODAY! 


2700 N.E. Andresen Rd. 
Suite A-10 

Vancouver, Wa 98661 
(206) 695-1393 


SUopol 


1-800-356-1179 


Major Credit Cards Accepted. 


Circle Reader Service Number 190 


REVIEWS 


WILD STREETS 


If you like karate, fighting a 
variety of foes, and rescuing 
kidnap victims, then grab 
your joystick and get ready 
for Titus's new action adven- 
ture, Wild Streets. 

Set in 1998, the action 
takes place in and around 
the wild streets of crime-rid- 
den New York City. Drug 
lords and arms dealers 
have turned the city into a 
combat zone. Honest citi- 
zens have fled, and control 
of the city is in the hands of 
criminal organizations. 
These criminal empires 
have amassed fortunes that 
are crippling the nation's 
economy. Something has to 
be done. Fighting through 
the rubble and ruins that cov- 
er more than half the city, 
CIA forces launch an effec- 
tive strike against the crimi- 
nals. Their success is offset 
by the kidnapping of the 
CIA leader, John Stevens 
(code-named The Boss). 

Your mission is to find Ste- 
vens and rescue him. 
You've been trained to ac- 
complish difficult missions 
at one of the nation’s most 
hush-hush training acade- 
mies. You're a master of se- 
cret and lethal martial arts— 
but don’t forget your trusty 
.357 magnum. Even though 
this is a single-player game, 
you'll have another agent 
working with you—a 180- 
pound, eight-foot-long 
black panther with a mind of 
her own. 

You can control your char- 
acter with either a joystick or 
the keyboard. By using com- 
binations of fire button and 
joystick movements, you'll 
have quite an array of ac- 
tions available: high jump, 
right jump, left jump, 
crouched punch, regular 
punch, stomach kick, elbow 
jab, head butt, uppercut, 
high kick, stomach punch, 
G8 COMPUTE JANUARY 1993 


upward kick, right walk, and 
left walk. It takes a while to 
master the proper combina- 
tions in order to take advan- 
tage of your character's fight- 


ing ability. 
As my character walked 
through the deserted 


streets of the city with the 
panther at his side, | prac- 


r 
r 
r 
rm 
r 
r 
7" 
r 
F 


helpful to prop the card 
next to the monitor while | 
was learning the game. 
The game has a status 
box that tracks the score 
and the energy levels for 
both you and the panther. 
Just as you can't control the 
pantherjs actions, neither 
can you restore or conserve 


In Wild Streets, you and a black panther take on drug lords and 


arms dealers who have turned the city into a combat zone. 


ticed his fighting maneu- 
vers, As he punched, kick- 
ed, and jabbed, the whole 
scene reminded me of Mi- 
chael Jackson's “Black or 
White” video—but this pan- 
ther doesn't change into a 
human. This one is trained 
to protect you. She slashes, 
maims, and kills enemies 
without any effort or control 
on your part. 

With the game, Titus in- 
cludes a 28-page manual 
that provides background to 
the kidnapping and many of 
the enemies. The manual 
has few real tips for playing 
the game, but it makes inter- 
esting reading. The most 
helpful item is a card that 
lists maneuvering com- 
mands for both the joystick 
and the keyboard. | found it 


her energy levels. As for 
your own character, he'll ex- 
pend energy every time he 
fights or fires his gun. 

You can conserve energy 
by walking quietly between 
encounters with the bad 
guys. During a fight with a 
gang leader or major ene- 
my, the panther’s energy 
bar becomes an indicator of 
your enemy's strength. | 
find it more helpful to know 
the effect of my attack on 
my foe than to watch the big 
cat's energy level. After all, 
| can affect the enemy's en- 
ergy, but | can't do anything 
about the panther's. 

As you travel through the 
various parts of the city, sev- 
en gangs are out to stop 
you. The gangs have color- 
ful names like The Harlem 


Headcrunchers and The 
Happy Gravediggers, and 
each is run by a particularly 
tough leader. You'll have to 
fight the leaders in order to 
make progress. As you ad- 
vance from level to level, the 
riffraff opposing you be- 
comes more skilled. In fact, 
some are so powerful that 
it'll take more than karate 
chops to stop them. This is 
the time to draw your gun, 
A word about that weap- 
on. Even though you can 
use your .357 during fights, 
it has only six bullets, so use 
them sparingly. Watch for 
more ammunition lying on 
the sidewalks—I told you 
this was a tough town! Each 
ammo magazine you pick 
up contains six more bul- 
lets. In the long run you'll 
find that your hands and 
feet are the best weapons. 
They won't run out of ammo 
in the middle of a fight. 
Once you've located and 
rescued The Boss, your 
task is only half-finished. 
You still have to get him 
back to safety. He's no 
help, since he’s too weak 
from captivity to defend him- 
self. Wouldn't you know it? 
This is when you'll encoun- 
ter the strongest foes, too. 
The color and graphics 
on the Commodore are 
good, but not as good as 
the ones printed on the pack- 
age. If you read the fine 
print on the box, you'll see 
that those graphics are 
from the IBM and Amiga ver- 
sions. The ones for the Com- 
modore are much less de- 
tailed, but the graphics still 
make good use of color and 
contrast. 
The musical background 
of the game certainly didn't 
remind me of Michael Jack- 
son's video. This one occa- 
sionally sounds like a 45- 
rpm record being played at 
33%. For that reason, | feel 
the music isn't quite up to 


The 


GRAPEVINE GROUP ¢,. 
COMMODORE UPGRADES ; 


COMPUTER SAVER: This C-64 Protection System saves you costly repairs. 
Over 52% of C-64 failures are caused by malfunctioning power supplies that 
destroy your computer. Installs in seconds between power supply & C-64. No 
soldering. 2 year warranty. An absolute must and great seller ......-..++ $17.95 
© PRINTER PORT ADAPTER by Omnitronix. Avoid obsolescence. Allows you to 
use any Commodore (C-64) printer on any PC compatible or clone. Does not 
work with Amiga. . $34.95 


512K RAM EXPANDERS 


By special arrangement with Commodore, we have purchased. 512K 1750 RAM 
expander units for your C64 or C128 computer. These have been factory 
upgraded from 1764. Now keep up with the latest technology. Upgrade to 512K 

E with a simple plug-in module. Completely compatible and comes with software. 
Ifyou have a C64 you will need a heavier power supply (4.3 amp), which we will 
give you for $31.00. C128 users donot need this power supply. This isthe original 
Commodore unit with over 800,000 sold... $99.95 
Super 1750 REU CLone (512K). Does not require a larger power supply.$142.50 


COMMODORE DIAGNOSTICIAN II 


£ Originally developed as a software package, then converted to a readable 
format, the Diagnostician has become a fantastic seller. With over 38,000 sold 
worldwide, Diagnostician Il utilizes sophisticated cross-reference grids to locate 
faulty components (ICs) on all C-64 and C1541 computers (C-128/64 mode). 
Save money and downtime by promptly locating what chip(s) have failed. (No 
equipment of any kind needed.) Success rate from diagnosis-to-repair is 98%. 
Includes basic schematic .. + $6.95 
(Available for Amiga computers with 3%" disk at $14.95). 


NEW POWER SUPPLIES 


* A super-heavy, repairable, “not sealed” C-64 power supply with an output of 

4.3 amps (that's over 3x as powerful as the original). Featuring 1 year warranty, 

ext. fuse, schematics, UL approved $37.95 
(includes bonus Commodore Diag 

© Our Biggest Seller © 1.8 amp repairable heavy duty supply for 


120,000 sold) 
REPLACEMENT/UPGRADE 
CHIPS & PARTS 


6510 CPU... 
6526 CIA 
6581 SID 
6567 Video. 
E PLA 906114. 
All 901/225-6-7-9 
4164 (C-64/RAM). 
C-128 ROMs Upgrade (set 3) 
C1571 ROM Upgrade (310654-05) 
C-64 Keyboard (new) .. 
C64 Cabinet (new) 
Interface Cables: #6: 
#693 C64 to 3 pin RCA (eg. 1084 
1541/1571 Drive Alignment. 
Super Graphics by Xetec ri 
Service Manuals for C64, C128, 1802, 1084SP, 1541 


EMERGENCY STARTUP KITS 


Save a lot of time and money by repairing your own Commodore computer. All 
chips are direct socket plug-ins (no soldering). Each kit includes all you need to 
“start up"/révive your broken computer. Originally blister packed for the 
government PXs worldwide, this series is now available to you. Total cost 
savings per kit far exceeds purchasing chips on an individual basis. 


KIT #3 (Part #DIA 15) for C64 
Symptoms: No power up © Screen lock up ® Flashing colors * Game 
cartridge problems 
Contains: ICs #PLA/82S100/906114, 6526, Commodore Diagnositician, 
Fuse, Chip Puller, 8 RAMs, Schematic, Utility Cartridge & special 
diagnostic test diskette with 9 programs 
An $87.50 value for only $29.95 


KIT #4 (Part #D1A 16) for C64 
Symptoms: Control Port ¢ Sound ® Keyboard ® Serial device problems 
Contains: ICs #6526, 6581, 8 RAMs, Commodore Diagnostician, Fuse, Chip 
Puller, Basic Schematic, Utility Cartridge & special diagnostic test 
diskette with 9 programs 
A $79.80 value for only $29.95 


KIT #5 (Part #DIA 17) for 1541/1571 
‘Symptoms: Drive runs continuously ® Motor won't stop © Read errors * No 
power up 
Contains: ICs #6502, 6522, Fuse Chip Puller, Basic Schematic, Commodore 
Diagnostician & special diagnostic test diskette with 9 programs 
An $70.10 value for only $29.95 


= @S Send For Free Catalog DUCVER 


=a 3 CHESTNUT ST., SUFFERN, NY 10901 

Order Line 1-800-292-7445 Fax 914-357-6243 

Customer Service: 914-368-4242 _ International Order Line: 914-357-2424 

We Ship Worldwide ® Prices subject to change ® 15% Restocking Charge 
Holiday Hours: 9-7 €.T. M-F; 10-2 ET. Sat. 


Tell a friend you've heard it through the Grapevine. 


Circle Reader Service Number 145 


MAD MAN SOFTWARE proudly presents, 
THE COMPRESSION KIT. 
The essential backup.utility. Don't use a BBS without it! 


* Double your disk:sps 
* Compress stantlard PR / USR files. 
* Compress/Ar¢hive 4.set of:statidard files into one file! 
* Compress an €atire 1541/157.E71581 disk into one file! 
* Compress an CM. Partition into one file. 
ili Euper reliable verify option! 
Th 


sougrators Guide. 
tive /RAMLink/ 


MBBS 


moresimie 
second phon 
* Get special d 


The Messiah is Coming! 


Ace you ready? 


Messiah I: Nemesis 
Price $59.95 Invading your home this spring! 


Special thanks to those that contacted us about M3- you will 
soon receive a thank you letter with our special How To Keep 
Your Commodore Alive newsletter. If you would like to drop us 
a letter, we would love to hear from you. 


Mad Man Software 
7610 West 5th Avenue, Suite 200 
Lakewood, Co. 80226 


We support Commodore users! 


Circle Reader Service Number 222 


8 BIT 


PO BOX 542 
LINDENHURST NY 11757-0542 


DON’T BB CAUGHT WITHOUT A GREAT GIFT 
FOR YOUR FAVORITE COMMODORE USER ! 


To receive this 6PAC | 


HAPPY HOLIDAYS TO EVERYONE! 


SOMB ITEMS ARE LIMITED! CALL FOR AVAILIBILITY! 
SHIPPING $2.00 For First Item + $1.00 cach additional item 
*U.S. Funds Oalyl *SORRY NOC.O.D.’s OR CREDIT CARD ORDERS 

FOR A FREE COPY OF OUR CATALOG, CALL: 

(516)-957-1110 MONDAY - FRIDAY 10am to 5pm EST 


Circle Reader Service Number 162 


REVIEWS 


the standards of the rest of 
the game. It isn’t a major dis- 
traction for me; | simply turn 
off the sound. Players who 
like musical accompaniment 
might find it a bit disappoint- 
ing. On the other hand, they 
may be like my son and get 
so wrapped up trying to mas- 
ter the game that they don’t 
notice the flawed music. 
Wild Streets is challeng- 
ing. The multiple move- 
ments require practice, and 
increasingly strong enemies 
force you to stay alert. Ina 
time when more and more 
software manufacturers 
have abandoned Commo- 
dore users, it's refreshing to 
find a new game that offers 
colorful graphics, multiple lev- 
els, and hours of fast-paced 
computer action. 
MARTI PAULIN 


Commodore 64 or 128—$39.95 


TITUS SOFTWARE 

20432 Corisco St. 

Chatsworth, CA 91311 

(818) 709-3692 

Circle Reader Service Number 290 


KEYBOARD 
ANIMATION, 
CUSTOM TITLES 


All hackers, programmers, 
and self-appointed comput- 
er gurus exit here. These 
two programs are not for 
you—unless, of course, 
you'd like to develop a pro- 
gram that serves a function 
similar to Keyboard Anima- 
tion and Custom Titles. 
When reviewers look at 
software, they have to keep 
in mind the target audience 
as they consider whether or 
not a program meets its in- 
tended goals. If the review- 
er is too far removed from 
the target audience, he or 
she runs the risk of misjudg- 


ing the software. That's why 
Dave Minnick writes reviews 
of utility programs and so- 
G10 COMPUTE JANUARY 1993 


phisticated — simulations, 
while | write about word proc- 
essors and educational pro- 
grams. That's why Dave, 
with his more than ten years 
of programming experience, 
wasn't overly impressed 
with the Andor House tutori- 
als, Keyboard Animation 
and Custom Titles. 


lustrate what can be accom- 
plished with the instructions. 

What Radler does is ex- 
ceedingly simple in con- 
cept; maybe that’s why no 
one has done it before. I've 
often wished someone 
would do this sort of thing 
because it's what I—and 
probably many others— 


“bee 
SOR 


TOUCHE... 


With Keyboard Animation, you learn how to create a variety of 
action scenes with the graphics characters on the 64's keyboard. 


Dave already knows this 
stuff. On the other hand, I've 
spent ten years at a key- 
board using other people's 
programs, and | was in- 
trigued, tempted, and finally 
educated in the program- 
ming basics that these two 
programs offer. 

Custom Titles and Key- 
board Animation lead you 
through the steps involved 
in creating two elements 
that help make up success- 
ful programs: title screens 
and animated sequences. 
To create these elements, 
Don Radler, the program- 
mer behind Andor House, us- 
es PRINT statements and 
the Commodore keyboard's 
graphics keys. Each pro- 
gram consists of a disk with 
a text file that contains a 
friendly article and instruc- 
tions for using PRINT state- 
ments and graphics keys to 
create simple animations or 
custom titles. Additional 
files on the disks are exam- 
ples of Radler’s work that il- 


have needed to crack the 
barrier of fear that separates 
the informed user from the 
beginning hacker. 

In his documentation, Ra- 
dler refers the user to his 
sample programs. Pointing 
to his examples, he explains 
how he went about devising 
the pertinent sections. The 
best piece of advice he 
gives, the keystone of the 
process, is how to set up a 
workable ‘“canvas" on 
which to create an initial 
drawing. Radler's method 
calls for you to draw the fig- 
ures first. You can actually 
see what you are creating 
with your PRINT statements 
when you list the program. 
Once you have the basic pic- 
ture, Radler then tells you 
how to add other elements 
to enhance the drawing. 

Adding the elements of 
space, sound, and color 
call for embedded charac- 
ters in PRINT statements. 
While these characters en- 
hance the drawing, they al- 


so distort the appearance of 
your program listing. As Ra- 
dler explains the process, 
it's easy to understand, par- 
ticularly for novices who 
can't make the mental jump 
from program commands on- 
screen to what those com- 
mands do when executed. 

You can load, list, and 
run the sample files on 
each disk, and you can ex- 
amine them thoroughly. You 
can also play around with 
them, learning what hap- 
pens when you add a 
POKE 53281,9 and lose the 
drawing of a striped tiger 
against a brown back- 
ground. 

In Keyboard Animation, 
you see the gradual chang- 
es that are needed to ani- 
mate a sequence of still 
drawings. You also learn 
some programming short- 
cuts that make the process 
less tedious. 

While | enjoyed Radler's ar- 
ticles, I'd like to see him bor- 
row some of the documenta- 
tion from Keyboard Anima- 
tion and add it to Custom Ti- 
tles. In Keyboard Animation, 
he tells you the most effi- 
cient way to add color com- 
mands, and that is some- 
thing he should also have 
included in the documenta- 
tion for Custom Titles. 

Along these same lines, | 
wish he had included tables 
that list the commands 
which contro! color in 
PRINT statements and the 
color codes in POKE com- 
mands which — control 
screen backgrounds and bor- 
ders. That would have been 
the ultimate in handiness for 
me. As it is, | had to scram- 
ble for my Commodore 64 
Programmer's Reference 
Guide. My desire for color in- 
spired this formidable feat of 
motivation; I'd never even 
opened that manual before. 
There's nothing wrong with 
having to do this, but includ- 


PUMP UP 


YOUR PRODUCTIVITY! 


Harness the potential of your, The Gazette Graphics 
64 and 128 with these de 


Do it all with Commodore 
powerful programs. 


graphics! 
Here's what's on it— 
Get more work out of your 64 and 128 Soto areee 
with these two new disk products from 128 Graphics Compactor, 
COMPUTE's Gazette — the 1992 
Best of Gazette Utilities, and 
the Gazette Graphics Grab 


64 Animator, VDC Graphics, 
Dissolve 128, Super Slideshow, 
128 Animator, 1526 PrintScreen, 
Supratechnic, Medium-Resolution 


Bag! Graphics, Screen Maker, GASI64— 
The 1992 Best of Special Edition, GAS!128-Special 
Gazette Utilities Edition. 


Seize control of your operating 
system and your world! 


Here's what's on it-MetaBASIC 64, 
MetaBASIC 128, Quick, Sprint|l, 
Ultrafont+, RAMDisk 64, RAMDisk 128, 
BASSEM, SciCalc 64, List Formatter, 
MegaSqueeze. 


ORDER 
THEM 
TODAY! 


Check or Money Order __ MasterCard ___VISA 
| want to pump up my productivity! Please send me the 


@ disks checked below at $11.95 each. Credit Card No. Exp, Date 
ignature 
__The 1992 Best of Gazette Utilities Sau Tague 
_— The Gazette Graphics Grab Bag Daytime Telephone No. 
| 
—— Subtotal Name 
___ Sales Tax (Residents of NC and NY please add appropriate sales tax for your 
area. Canadian orders, add 7% goods and services tax.) ~ Address 


___ Shipping and Handling ($2.00 U.S. and Canada, $3.00 surface mail, $5.00 City 
airmail per disk.) 


State/Province ZIP/Postal Code 


_— Total Enclosed 


Mail this coupon to COMPUTE's 1991 Utilities, 324 West Wendover Ave., Ste. 200, 
MasterCard and VISA accepted on orders with subtotal over $20. Greensboro, NC 27408. | 


Upgrade your Commodore system 


Refur! Stent arciware 
MONITORS: DRIVES ER 


1701 -$235 $209 1541-$T00S89 1660 -$30$25 

1702-$255 $229 1541-I-$20 $109 1670-$50 $45 

1801 -$265 $239 1571-$1855154_ C64 -$100 $94 
1802 -$285 $259 1571-I1-$¥@5 $174 64C-$120 $114 
1901 -$295 $269 1581-$T80$159 C128-$176 $169 
1902-$305 $279 1001SFD-$150$139 C128D -$225 

1084s- $325 $299 1530 DATASETTE-$35 
MANY BOOKS- $10 ‘SOFTWARE - $10-20 AAMLINN/RAMGARD CW BATTERY (OM) - $345 
‘ASK FORANYTHING, IMIGHTHAVEIT! 1MbRAMSIMM-$75____4Mb RAM SIMM-$250 
SHIPPING INCLUDED FOR CANADA, USA +15% 

15 DAY WARRANTY ON REFURBISHED GOODS 

TAX - Canada + 7% GST, Ontario Res. + 8% PST 


‘64/12B/AMIGA- 1200BAUD- $39 $79 
APROSAND-4 SLOT CARTRIDGE 
EPMIDER FORTE ize OR 

w CMD accessories | 


REVIEWS 


ing those two tables would have made 
the documentation complete. 

| don't think anyone has written tuto- 
tials for these simplest of programming 
techniques before; | don’t suppose an- 
yone thought there was a need. I'm 
sure there are a lot of Commodore us- 
ers out there who lack only a starting 
point to begin programming. 

The 64 is a great machine for learn- 
ing. If you're new to programming, 
you'll find that the Andor House tutori- 
als, Keyboard Animation and Custom Ti- 
tles, are great ways to learn about 
these programming niches. Now, the 
question that comes to mind is, How 
many other tutorials can be devised to 
cover other areas of programming? | 
hope someone responds to this need— 
maybe Andor House itself. 

ROBIN MINNICK 


Commodore 64 or 128—$4.95 each 


ANDOR HOUSE 

3907 SE Second Ave. 

Cape Coral, FL 33904 

Circle Reader Service Number 291 


SWAP 


Foiled again by tiny tiles and a time lim- 
it—and I'm only on level 29! It's becom- 
ing addictive. It's a game from Titus for 
the 64 called Swap. 

Swap's basic concept is simple: 
Clear a playing board of colored tiles. 
When you click on adjacent tiles, 
those tiles swap position. The object of 
the swap is to place tiles of the same 
color next to each other. When you suc- 
ceed in doing this, those tiles disap- 
pear from the board. 

Play gets even more challenging 
when you reach level 15. A time limit is 
introduced. Tiles are smaller, and obsta- 
cles called credits make advancing 
more difficult. 

Even with the increasing difficulty, 
Swap is simple to play. There's a short- 
cut called an avalanche that helps you 
complete a level. By clicking on the 
avalanche feature, all remaining tiles 


G-12 COMPUTE JANUARY 1993 


drop down, Tetris-style, to fill any 
holes on the screen left by removed 
tiles. Of course, when tiles of the 
same color fall adjacent to each other, 
they disappear, clearing more board. 

Swap monitors your performance as 
you play. If you play well enough, you'll 
move to the next level before you ac- 
tually clear the board. Your progress is 
indicated on the right side of the 
screen in the form of stars. Stars are 
awarded as you accumulate points. If 
you earn eight of them, you'll advance 
to the next level. 

Click on the Quit icon at any time to 
quit. This takes you to the summary 
screen, where you can read your sta- 
tistics for the last level played. From 
this screen you can quit competition, 
continue the level you were playing, or 
go on to the next level. Naturally, the 
next level will be available only if 
you've earned your eight stars. 

You're also given the option of sav- 
ing a game. This is a great feature if 
your goal is to reach the highest level 
possible. By saving your game, you 
can start out where you left off instead 
of having to go back to level 1. Believe 
me, if you're on level 45 and need to 
leave the game, you don’t want to 
come back and start all over! 

When you find a tile sitting all by it- 
self with no chance of disappearing, 
that's the time to use a supplementary 
tile. These are available on many of the 
levels. By clicking on a supplementary 
tile, you can pick it up and move it any- 
where on the board. The point here is 
to place the supplementary tile next to 
an isolated tile of the same color in or- 
der to remove it. If you use the 
avalanche feature, you won't have 
much need for supplementary tiles un- 
til you reach the more difficult levels 
and encounter credits. 

Credits make the game harder. 
They appear as stacks of silver, gold, 
or diamond ingots on the bottom right 
of the screen. The silver ingots are 
worth 1 credit; the gold ingots, 10 cred- 
its; and the diamond ingots, 100 cred- 
its. At this point, making a single swap 
costs you 2 credits, while removing a 
tile from the board earns you 1 credit. 


azette 
Index 


Everything’s included! 
Features, games, reviews, 
education/home applications, 
programming, bugswatter, 
feedback, and columns! 


A superb interface includes pull- 
down menus, help screens, and 
keyboard, joystick, or mouse con- 
trol. Features include super-fast 
searching and sorting capabilities. 
An options screen allows you to 
choose text colors, drive number, 
and input device. And there’s full 
documentation on disk. 


Choose from three modes of opera- 
tion—browse for quick scanning, 
view for detailed information and 
descriptions, and edit for adding 
items from upcoming issues—and 
print to any printer. There’s even a 
turbo-load option for maximum 
disk-access speed. 


ORDER YOUR 
GAZETTE INDEX 
TODAY! 


(MasterCard and Visa accepted on 
orders with subtotal over $20.) 


To order, send $7.95 per disk, the 
quantity of disks ordered, check « 
or money order,* your name and 
complete street address: 


Gazette Index 

3824 West Wendover Avenue 
Suite 200 

Greensboro, NC 27408 


*Please add $2 shipping & handling ($5 foreign) for 
each disk (residents of NC, NJ, NY please add appli- 
cable sales tax; Canadian orders, add 7% goods 
and services tax) 
All payments must be in U.S. funds. Please allow 4 
weeks for delivery. 


Therefore, if you make a swap that re- 
moves two tiles, you have a net gain of 
0. The computer will not allow you to 
make a move if you can’t afford to 
make it. Using a supplementary tile 
now costs you 10 credits. And if you 
use the avalanche feature, be pre- 
pared to spend 100 credits! 

This is the time to kick the gray mat- 
ter into high gear and use logic. By the 
way, there’s an undo feature on all lev- 
els that allows you to go back and un- 
do the last swap that you've made. It's 
sort of a built-in lifesaver when your 
goal is to clear the screen. 

Swap gives you not only a competi- 
tion mode but also a practice mode. 
The practice mode is great fun on its 
own. You can set it up any way you 
want. When you choose the practice 
mode, you receive a window of icons. 
From there you can select the number 
of colors you want, the shape of the 
tiles, and whether or not you want any 
of the extra features such as credits, 
time limits, supplementary tiles, or the 
avalanche. Here is a chance to pit 
your mind against difficulties of your 
own choosing. If you don't like what 
you've chosen, you can go back and 
set it up differently. 

As you make your way through com- 
petition mode, tiles become smaller. 
Even though the colors and graphics 
are good, it becomes harder to posi- 
tion the pointer on the spot you want. 
At one point, my joystick pointer was 
larger than the tiles on the screen, mak- 
ing placement tricky. 

Although the scoring seems to be 
quite involved, it isn’t explained in the 
manual. So I'm not really sure just how 
you should approach the game. Should 
you try to fly through the screens and 
move on to the next level as quickly as 
possible, or take your time and use log- 
ic? This choice is up to you. If all you 
want is a challenge to test your mental 
powers, then focus on exercising your 
wits and use the practice mode to cre- 
ate the challenge of your choice. 

The manual says that the level you 
proceed to is determined by your per- 
formance on the previous level. It as- 
sures me that if | play well, | can jump 
straight to level 90 after level 1! That 
has yet to happen. It may never hap- 
pen in my lifetime. But if you want to 
know where to find me, I'll be sitting at 
my computer, trying to make that 
swap that will send me to level 90! 
CHERYL TURNEY 


Commodore 64 or 128—$39.95 


TITUS SOFTWARE 
20432 Corisco St 
Chatsworth, CA 91311 
(818) 709-3672 


Circle Reader Service Number 292 ia] 


C64/128 PUBLIC DOMAIN SOFTWARE 
REQUEST FREE CATALOG or send $2 for sample disk and catalog (RE- 
FUNDABLE). Categories include education, utilities, games, business, 
PRINT SHOP graphics, pre-tested programs and more. Rent for 75¢ or 


buy as low as $1.00 per disk side or for 80¢ for 70 or more. $20 order 
gets 4 free disks of your cholce. 
NEXT DAY SHIPPING! SINCE 1986 
& CALOKE INDUSTRIES (Dept. GK) sr) 
= PO BOX 18477, RAYTOWN, MO 64133 —— 


Circle Reader Service Number 181 


DISK MAGAZINES FOR 64 & 128 
Great programs & articles from both sides of the Atlantic. 
C64 ALIVE! is U.S. produced. LIGHT DISK and clubLIGHT are UK produced. 
C64 ALIVE! Sample disk $3 (£1.50): 5 issues ending 12/92 $20 (£10); 

6 issues starting 1/93 $25 (£12.50) 
clubLIGHT Single issue $5 (£2.20): __ 12 issues starting 9/92 $50 (£23.40) 
LIGHT DISK (only 4 issues) 8 Disks $30 (£15) 

LIGHT DISK and clubLIGHT are for 64/128 — C64 ALIVE! is 64 only 
FOR DELIVERY: 
IN U.S.: Jack Vander White, C64 ALIVE!, P.O. Box 232115, Sacramento, CA 95823 
IN UK: Datasphere Publications, 7 Fallowfield Close, Valley Drive, Norwich, NR1 4NW 
Outside North America and UK write for prices. 


Circle Reader Service Number 154 


C-64 or 128 
The adventures of 
Eric Hauthorne, P.I. 
$19.95 Check or 1.0. to 
CREATIVE PIXELS LTD. 
PO BOX 592 
LIBRARY, PA 15129 


Action/Strategy/Board Game Fun for all ages! 


Circle Reader Service Number 113 


COMPUTER REPAIR sxe 


C-64: $40.00 1541: $54.95 64C: $50.00 
1541-Il: $64.95 €128:$64.95 6€128D: $74.95 
1581: $64.95 

WE ALSO REPAIR IBM Clones, Sega, Genesis, Nintendo 


For more info call: BEAR TECHNOLOGIES 


Computer Sales, Service & oe 
1005 McKeon Street, Philiadelphia, PA 19148 


215-336-5295 1-800-640-7400 
Circle Reader Service Number 152 


DEPENDABLE SERVICE FOR YOUR COMMODORE! 
C-64, 1541, C-128, or 1571: ==FAST TuRNAROUND! 


$25, PLUS PARTS AUTHORIZED COMMODORE 
Send computer* or drive with name, ad- SERVICE CENTER 
Gress, phone, & describe problem. We'll at, ek ee. 
call with parts estimate, then repair and 90 DAY WARRANTY 
return to you insured by UPS. Payment ‘ON ALL REPAIRS 
can be COD or VISA, M/C. Minimum 
charge, estimate only is $20. * Include power supply. 

503 East St. Dept.C 

TYCOM Inc. 


Pittsfield, MA 01201 


(413) 442-9771 


Circle Reader Service Number 242 


JANUARY 1993 COMPUTE 


Unification hasn't 
tumed East 
Germany into a 
paradise, but 


it's not a bad place 


G-14 


for 64 fans. 


WORLD VIEW 


Matthias Matting 


VIEW FROM EAST 
GERMANY 


If you hear or read about Ger- 
many these days, you probably 
remember the breakdown of 
the Berlin Wall, right? But I'm 
not writing about politics here 
in Dresden, East Germany 
(DDR); I’m writing about our lit- 
tle Brotkasten, as we call acom- 
puter in German, The word 
means “breadbox" in English. 

To give you some idea of 
the 64 scene here in East Ger- 
many, I'll first go into a little bit 
of history of the DDR. | got my 
first 8-bitter, a Sinclair ZX-81, 
ten years ago in an Intershop 
for the small price of DM (Ger- 
man marks) 100. In Inter- 
shops, you could buy all kinds 
of Western items, for Western 
currencies, of course. 

East German computers 
were produced, based on a 
clone of the famous Z80 chip. 
There were two series of 
home computers. The first one 
started with 16K of RAM and 
was expandable to 64K, and 
the second one had more ca- 
pabilities for expansion. In the 
final days of the DDR, a third 
series was produced—a 
clone of the Schneider CPC. 

How about computer pric- 
es? You had to pay at least 
DDR-M (East German Marks) 
3,000 for a computer with da- 
tasette. A single double-sided, 
double-density floppy disk 
cost at least DDR-M 30. An av- 
erage worker at this time 
earned DDR-M 300 a week. If 
you wished to buy a 64, it was 
priced at DDR-M 4,000. 

For better understanding of 
the situation here, | have to 
say that all the necessary 
things of daily life were very in- 
expensive, so nobody had to 
feel hungry. In this situation, 
it's clear that nobody ever 
bought programs. They were 
just too expensive. The only 
possible way to afford a pro- 
gram was to copy one and 


COMPUTE JANUARY 1993 


then make copies of that. 

Well, the times changed. All 
the events that you heard 
about occurred, and now we 
are in a united Germany. 
There's only a small frontier be- 
tween the East and the West. 
Another kind of frontier still ex- 
ists in the heads of the people 
because of the different edu- 
cation, experiences, and condi- 
tions of life. 

The average income in the 
East is approximately 60 per- 
cent of that in the West, but 
that’s a great advantage for 
the 64. Whereas the Amiga 
dominates the market for 
home computers in the West, 
here in the East most of the 
young people buy 64s. That's 
why Commodore increased its 
sales in Germany by 41 per- 
cent in 1991. In all, it sold 
about 160,000 64s. 

Computers, peripherals, 
and games are mostly sold by 
mail order, but they're also 
found in large department 
stores. The least expensive 
rate for a 64 with a disk drive 
now is at DM 550. An average 
worker now earns DM 500 a 
week. Luckily for us, there are 
many companies here produc- 
ing peripherals. The most im- 
portant products you should 
know about are the Pagefox 
desktop publishing module 
with 100K of additional RAM, 
Printfox, and Handyscanner, 
the world's first scanner for the 
64, There are also Videodig- 
itzer, Genlock Interface, Pay- 
TV Decoder, and so on. 

In the software area, there 
is a great interest in GEOS. 
Our GEOS user club (GUC) 
has about 2000 members! Sev- 
eral products have been devel- 
oped under the label of this 
club. For example, we have 
GEOS on EPROM (booting in 
eight seconds), GEOS-LQ (las- 
erlike printing for 9- or 24-pin 
printers), and the new 
TopDesk (supporting four 
drives, four removable win- 
dows, fast copying, subdirec- 


tories, and much more). GUC 
publishes its own magazine 
called GEOS User Post, 
which is produced with 
GEOS. Every year, we have a 
meeting where all the mem- 
bers may participate. 
Generally, there are few dif- 
ficulties in getting foreign 64 
products. Many distributors 
are found in Germany, so we 
can buy CMD's HD, RAMLink, 
and RAMDrive here in Germa- 
ny. The higher prices of these 
devices in relation to compa- 
rable Amiga products make 
them a little bit unattractive for 
the normal user to buy. A 
CMD HD-20 hard drive costs 
about DM 1,200 ($700). 
Unfortunately, electronic 
communication hasn't pro- 
gressed here as it has in the 
U.S. There are no great BBSs 
for the users of home comput- 
ers. Of course, you may call 
mailboxes and so on, but only 
10 percent of the users have 
a modem. 
| think the 64 users in Ger- 
many can be divided into 
three groups. First are the 
game players who want their 
machines to do more than just 
play games. As time goes by, 
they have to decide whether 
to stay with their 64s or 
change to larger machines. 
Second are the demo pro- 
grammers. They know their 
computers very well, and are 
the future programmers of 
games and other programs. 
Last but not least are the eld- 
er users who are accustomed 
to their 64s and who don't 
want to leave them. Most of 
them use their 64s for serious 
applications, such as busi- 
ness, and have learned that 
nearly all is possible with 8-bit 
computers. | think this mix of us- 
ers guarantees the 64 a good 
start into the next millennium. 
| hope I've given you some 
idea of what the 64 scene is 
like here in East Germany. Ger- 
many is not a paradise, but it 
is a good place for the 64. 0 


NEW! COMPANION FS-4 NEW! 
DISKS O'PLENTY INC 


8362 PINES BLVD. SUITE 270A 
PEMBROKE PINES FL 33024 
(305) 963-7750 


Call or write for free descriptive catalog of 
C64/128 Public Domain & Shareware 
Choose from over 900 Disks 


ISLAND of the DRAGONS 


C-64 or C-128 in 64 node 


ACTION/ADVENTURE/ROLE PLAYING GAME 
HI-RES MULTICOLOR 160x200 AMIGA-LIKE GRAPHICS 
EXCITING STORYLINE THAT UNFOLDS AS YOU PLAY 


The ultimate upgrade for Fleet System 4 and Fleet 
Filers 64/128. Transfer Fleet software to any 15XX 
drive, hard drive, CMD’s RAM LINK, or RAM DRIVE. 
Get max. speed and productivity! Filers 64/128 up- 
grades: now access up to four disk drives, easily 
transfer files between drives. Users may select their 
favorite screen colors from within Fleet Filers. F-keys 
now have logical layout, much faster data entry, no 
more accidental screen dumps. Many other improve- 


A pilot crash lands his plane on an island 
inhabited and ruled by dragons. Discover the 
secret link between dragons and prehistoric 


Adult list of over 50 Disks available 
to those 18 or over. 


021MU_ SID MUSIC UTILITIES 


019GR_ PRINTSHOP UTILITIES 
019ED JRHIGH EDUCATION 
062ED HIGH SCHOOL EDUC. 
033ED TYPING / SPANISH 
031ED COMPUTER SCIENCE 
O10UT PIRATES TOOLBOX 
119GA FOREIGN ARCADE 
022GA CASINO-BOARD GAMES 
021GE GEOS FONTS 

002MS LOTTERY PROGRAMS 
003MS COLLECTORS CORNER 


Circle Reader Service Number 253 


Choose 6 for $5.00 
LIMITED OFFER 


creatures. Rescue your girlfriend from the 
evil Reptilican. Befriend the gold dragons 
and battle the evil blue dragons. Confront 


prehistoric creatures such as Triceratops and 


Tyrannosaurus. Fun and excitenent for all. 


$19.95 Check or M.O. 


CREATIVE PIXELS LTD. 


P.O, BOX 592 
TIBRARY, PA 15129 


Circle Reader Service Number 113 


KeyDOS ROM Version 2 is here! 


hip for the empty socket inside your C128 that adds more than 40 


KeyDOS is available instantly as soon as you switch on your 128! 
KeyDOS is loaded with useful tools to simplify file access on multiple drive systems without typ- 
ing file names—all major DOS functions included. Select multiple files for copying, viewing, 
printing, renaming or scratching. ASCIVCBM/Screen code converter, Full support for 1581 
subdirectories. Built-in RAMDOS for REUs up to 2MB. New GEOS SupeRBoot 
Alarm clock. Disk editor. Powerful debugger. 

Only $32.50. Satisfaction Guaranteed! Write for more information. 

Enhance your system with the speed and convenience that KeyDOS provides! 


Antigrav Toolkit, PO Box 1074, Cambridge, MA 02142 
Shipping outside of US, Canada and Mexico add $3 


Circle Reader Service Number 244 


LOTSA DISKS! THE BEST IN G4 128 PD. 


GEOS, Graphics, Clipart, Demos, Games, 
Bible, SID/MIDi, Education, Basic8! 


We have what 


Send stamp for 


dears dap 


FREE 


DISKOVERIES 


PO Box 9153, Waukegan, IL 60079 


Circle Reader Service Number 122 


Heart Attack. 
Fight it with a 
Memorial gift to 
the American 


Heart Association. 


THE AMERICAN HEART 
ASS@IATION 
MEMORIAL PRGGRAMe 


Uli eer 


American Heart 
Association 


This space provided as a public service. 


ments! Complete with templates, help files, spiral 
bound manual, Plus much more! 

C=128, 80 column. 

COMPANION FS-& srevrneenenen $24.95 + $3.00 S&H 


SEC CHECK REGISTER 128 


Manage personal or small business checking in a 
fast/efficient manner. Fast data entry. Unlimited 
recurring payees. 750 active file transactions. Up to 
999 Ref. numbers. Easy editing! Reports printed by, 
Outstanding Transaction, Transaction, Reference 
Number, Reference Number & Date, Date, Date & 
Random Reference Number, or Payee, Print any type 
of personal or form feed check. Supports all 1SXX 
and hard drives. Custom video fonts, spiral bound 
manual and much more! 

C=128, 80 column 

Free Bonus: SEC Financial Calc, 128! 

SEC CHECK REGISTER evsewne $24.95 + $3.00 S&H 


ORDER TODAY: Check or Money Order. 


SPARKS ELECTRONICS 
5316 So. 9th, St. Joseph, MO 64504-1802 
Missouri Res. add 6.225% sales tax. 


Trademarks of respective 
manufacturers/publishers acknowledged. 


Circle Reader Service Number 252 


18% OFF ALL ITEM PRICES BELOW!) C-64 ## C-128 
ends 1/31/93 (S & H excluded.)| Plus/4 # C-16 


PSG-PrntShp Grphcs— Sd/sides-G/qases—M/eath 
S/science-c£/Engl ish-ED/edye, —-6¢/ge09, 

UT/util.~-PR/producti vity—TE/ tel coasuni cation 
Note PSS—A/3 Bik/non-C= & B/? BIK/C= Printer! 


Itea ——-----— (8 of oa Pas LY Su 
fA: KJV Bible--2 sd Mus, A or Bee 


58 Bk/ 142 


Paget =i Prgs 12/1342 
: Educ Pack B--H-S-E-Ge-Etc--—-608 Prgs _6/78+7 
+ Bks(119p)—-Cé4 or 128-Aeaz G/ $9.95, Bk/ 3+2 
2 & Pack A-HarioBrew—SMar-SHar I1-SHar$ 
*Tetris Clones-Cé4/64C/C-128(8%) 2/ 941 
¢ 6 Pack B-Trshan,Strraidr firDa,Otpst,+ 2/ 9+ 
eta Ml-Fa-Child forB PS6 #Prgs _7/ 8+2 
Notcher-se back of DS/DD dists! ON/ 341 
Recipe Potpouri-178 recipes-Proprass 3 7+1 
i ble-+/4—Txt files + 1 sd frogs 38/38+4 
; Back Ce-128-Star Trh-Cancents 10/1302 
1: Musique Classique——-—-38+ selections + 
: Pets-———-347 Dosestic animals PSS - 5/1042 
5: SPORTS-419 Mix-Bsbl1/FtbII/+ PSSHPrgs 5/1842 
Cartoon Characters-—Hixture 282 PSS 2/ 542 
: Coaptr Parade-255 PS6-fo/C=/ 18H 21 542 
: Fastcad Vi. (Enh CAD 3.8) *Suppt Files 5/1842 
Fun Graph Mach DeaotT+58 Fntst#R OP 3/ 642 
+ ISAL/TIPB1 UT Coaborér/Capr te) etc. B/1243 
05 Info-Prograaser's Kanual (8%p) + 
GEIS "8 Docusentation (aigl—cterae) 3/802 
+ KIV Bib-128 w/48-68 reader/printer + 
Zeach of ausic, Aor B PSS, & gases 36/35+4 


fAvailable-JIM HEH. COLLECTION. +/4 # C-16 # C-64 
‘JH-0—Bible-Tine +/4-64-25¢ Relig. Pros 3/ 6+ 
SHL—Plus/4 6 Pack-Has 158 plus gases 19/38+5 
UH@2—T-Pack +/4—Terainal pros & Hera 4/ 941 
3H-#5—C-16 Coabo-S8+ Pras. hues on wat 2 As 
JH-B4—-Superbase +/4-Powerful DBase prq. 2/ 4#1 
TH:@S—H.ALL. (upd) “Assablrr +4 Soscrpt 4 9H 
Be BUA rate ors, & Spies Fras, S/12H3 
JH-B7—Co4-Proitd WAFL 2/ 542 
Berd “SHSE" for nore dnforeation on above ftess- 


ae $/dsk side: $3 ->$1,5@ +StH $2/@ 18 Sd Flat 
CATALOGS: C64/128-47p ($2+2] Plus/4-18 ($2+1) 
PYMT-HO/CK (US$) Ca. Res. +8, 25% tax/itea total 
No Ce Sane International Rates StH 
ING: /MO-First # Chk when cleared. 


10: Kenneth Franklin (KF-PD SOFTWARE) #45 
POB 478464 # Los Angeles, Ca, 90847-0464 
Wainly, we have the PO Select Cosodore Library! 
We've cose to HERE as RUN MAGAZINE PHASES UT! ! 
THANKS FOR HELPING US INTO OUR ‘THIRD’ YEAR!! 


Circle Reader Service Number 163 


~ maa ecrareacnese SrEP MmSoeP 


Questions and 
answers 

about SpeedScrint 
files, problems 
with programs, and 
more 


G-16 


FEEDBACK 


(eR eS 5 RS eA 


Wrong File Type 

I've just started using Speed- 
Script, and I’m running into a 
problem. Whenever | type a let- 
ter and print it to disk, the 
next time | try to recall it, | get 
a FILE TYPE MISMATCH error 
message. Do | have a defec- 
tive disk or what? 


BOB CLARK 
INDIANAPOLIS, IN 


Whenever you create a docu- 
ment that you want to save 
with SpeedScript, you normal- 
ly press f8 and enter a file- 
name, SpeedScript then 
saves the information in Com- 
modore screen codes as a 
program (PRG) file. To load 
the file back into the word 
processor, press f7 and enter 
that filename. 

Printing a file to disk is a to- 
tally different procedure. To 
print a file with SpeedScript, 
press Shift+Ctrl+P simultane- 
ously. At this point you'll see a 
prompt asking if you want to 
print to screen, disk, or print- 
er. If you press D for disk and 
supply a filename, your docu- 
ment will be sent to the disk 
as a PETSCII sequential file. If 
you check the disk directory af- 
ter the process, you'll see the 
file has SEQ following it, indi- 
cating that it’s a sequential 
file. 

Some of the SpeedScript 
companion programs, such 
as SpeedScript Justified, re- 
quire sequential files. A se- 
quential file is also a conven- 
ient way to upload text to a 
BBS. It can be read with any 
sequential file reader or load- 
ed into other word proces- 
sors. You cannot load a se- 
quential file directly into 
SpeedScript, however. This is 
why you're getting that partic- 
ular error message. 

Look on your SpeedScript 
disk, and you'll find a pro- 
gram called Sequential File 
Converter. In addition to con- 
verting SpeedScript files to 
PETSCII and to true ASCII, it 


COMPUTE JANUARY 1993 


will also convert sequential 
files into SpeedScript pro- 
gram (PRG) format. 


Bug-Swatters 

| was excited to find Speed- 
Spell—a newer, faster, friendli- 
er spelling checker for 
SpeedScript—in the October 
1992 issue. | was disappoint- 
ed, however, when | discov- 
ered it was checking garbage 
characters in my documents 
when no such characters ex- 
isted. After disassembling the 
program, | think | have found 
and solved the problem. 

My version of SpeedScript 
3.2, which is souped up with 
Instant-80 (December 1987) 
and SpeedScript Easy Cursor 
(November 1989), saves doc- 
uments starting at 10496 
($2900). The original 
SpeedScript 3.2 saves at 
9472 ($2500), which is where 
SpeedSpell assumes the text 
begins. Alternate starting ad- 
dresses weren't taken into ac- 
count. The following fix will al- 
low SpeedSpell to load 
SpeedScript documents at 
any starting address. It will 
even load those written by 
SpeedScript 1.0. 

To fix SpeedSpell, load 
and run it. At the menu, press 
Q to exit. The 64 will cold 
boot, but BASIC RAM will not 
be erased. Enter the following 
POKE statements in immedi- 
ate mode. 


POKE 2049,11; POKE 2050,8: 
POKE 3907:0: POKE 3924,0: POKE 
3926,37: POKE 45,123: POKE 
46,24 


Save this updated version of 
SpeedSpell with a new file- 
name. 


CHARLES KUNZ 
HOLBROOK, NY 


Troy Smith of Austin, Texas, 
informed us that Typewriter 
Emulator in the October 1992 
“Feedback” column has a 
bug in it. Line 30 should be en- 


tered as it appears below. 
30 PRINT#4,A$;:GOTO 20 


If you're still interested in type- 
writer emulators, see the next 
letter. 


More Typewriters 
Converting a 64 and a printer 
into a typewriter might not be 
worth the effort. The first com- 
puter programming course 
hat | took in college involved 
lab work with such an arrange- 
ment. Everyone in the class 
hated the program—includ- 
ing the instructor. 

The following program 
works, using the tab function 
on most Commodore printers. 
have an Epson MxX-80Ill 
with a G-WIZ printer interface, 
but the interface emulates the 
ab function. 

There is one problem with 
this program: The printhead 
ags one character behind 
he keyboard. The last charac- 
ter typed remains in the print 
buffer until the next character 
comes along to push it out. 
EM 18 OPEN4,4,7 
BS 20 PRINT#4,CHRS$(27)"@"; 

BA 3@ LM=5:RM=70 
GQ 48 C=LM 
QS 50 PRINT CHRS(14)"{CLR} 
{3 DOWN} "TAB(C); 
SC 68 CS=MID$(STRS(C) ,2) 
JX 78 IF C<1@ THEN CS$="6"+CS 
JE 88 GET AS:IF AS=""THEN 80 
FE 98 IF A$=CHRS$(136)THENPRINT 
#4: PRINT"<":CLOSE4:END 
DX 106 IF AS=CHR$(32)THEN AS=C 
HRS (160) 
IF AS=CHRS(13)THENPRINT 
#4:C=LM: PRINT"<": PRINT 
{SPACE} TAB(C) ;:GOTO68 
QR 120 PRINT#4,CHRS(16)CSAS; 
EC 139 PRINTAS; 
BD 149 C=C+1 
CJ 150 IF C=RM-5 THEN PRINT#4, 
CHRS (7); 


IF C=RM THEN PRINT#4:C= 
LM: PRINT"<": PRINT TAB(C 


FR 110 


RH 166 


ve 
RA 178 GOTO 6¢ 


IRVIN DUNLAP 
BARTLESVILLE, OK 


Reader to Reader 

| recently acquired Mars Sa- 
ga, an old game from Electron- 
ic Arts. It's a great game, but 
now that | am stuck, | hate it! 
I've spent hours trying to fig- 
ure it out. | wrote to EA but 


was told the hint book is out 
of print. Can any fellow Ga- 
zette reader tell me where to 
find one? Please put me out 
of my misery. 
ROBERT COWARD 
102 LEVERETTE AD. 
HOGANSVILLE, GA 


Is there anyone who can tell 
me where | can find a copy of 
Kennedy Approach by Micro- 
Prose for the 64? I've tried 
everywhere over here and in 
the U.K. 


P. J, KIERANS 

66 NEWFIELD ESTATE 
DROGHEDA, COUNTY LOUTH 
IRELAND 


|_am one of the readers of 
COMPUTE, and | like comput- 
ers a lot. | have a 128 anda 
disk drive. | know BASIC and 
machine language. Because 
| like to make friends over- 
seas, | would like to have 
some pen pals. 

AHMAD HUSAM MUKHALALATI 


P.O. BOX 21935 
APEPPO, SYRIA 


Saving Files 

Is there an easy way that | 
can edit an existing Speed- 
Script file and resave it using 
the same filename? 


LINDA DONATH 
LOS ANGELES, CA 


Thomas Schaefer of St. Peters- 
burg, Florida, wrote and told 
us that he scratches the old 
file from disk before he saves 
the new version. Suppose 
you have a SpeedScript file 
called Letter that you want to 
edit. When ready to resave it, 
press Ctrl+T to enter the com- 
mand line. Then type S:Letter 
and press Return to scratch 
the old version on disk. You 
can then press f8 and save 
the edited version with the orig- 
inal filename. 

A shorter way is to use the 
SAVE WITH REPLACE (@) 
command. When ready to re- 
save the file called Letter, 
press f8 and enter @0:Letter 


on the command line. This 
scratches the old version and 
saves the new one with the 
same filename. By including 
the O after the @ symbol, you 
eliminate the quirky bug that 
once plagued the SAVE 
WITH REPLACE command. 


Device Number 
For years I've been meaning 
to write with a suggestion. | 
have a problem with many of 
your programs that provide 
for disk access from within a 
program. The device number 
is almost always coded for 
drive 8. | am sure you are 
aware that there are many oth- 
er drives available now and 
many of us have more than 
one. 

lam a fairly proficient pro- 
grammer, so | usually am 
able to make the necessary 
changes to your programs, 
but | suspect many readers 
are not able to do this. | wish 
that all programmers would 
be tolerant of any possible de- 
vice number. Perhaps a bet- 
ter solution would be to allow 
the program to determine 
which device is active. A pro- 
gram with this feature would 
be able to execute from any 
valid storage device. Here's 
an example. 


5 DV=PEEK(186) 
100 OPEN1, DV, 2,'0:"+A$+ 
“Pw 


Memory location 186 for both 
the 64 and 128 contains the 
number of the last device ac- 
cessed. This works unless oth- 
er device such as a printer is 
accessed before the loaded 
program is executed. A simi- 
lar routine in machine lan- 
guage would also be easy to 
implement. 

Another simple way to let us- 
ers select the device they 
want would be to have a line 
near the start of a program 
such as the following. This 
would let users make a sim- 


ple change, if desired. 
5 DV=9:REM DEVICE NUMBER IS 9 


This statement would elimi- 
nate the need to search 
through the whole program 
making changes in device 
numbers. Permitting a pro- 
gram to be adapted to a vari- 
ety of possible hardware devic- 
es should be the goal of all 
responsible programmers. 


BRAD DUMLER 
ARLINGTON, TX 


That's not a bad suggestion, 
Brad, especially for programs 
that save data to disk. What 
with hard drives, RAM expan- 
sion units, and a variety of flop- 
py drives in use, drive 8 is not 
as lonely as it once was. We 
would encourage Gazette pro- 
grammers to incorporate your 
ideas about multiple device 
numbers into their future pro- 
gram submissions. 


Clip Omitted 

| agree totally with Dorothy 
Hemme in “Word Processing 
Without GEOS" (October 
1992) that geoWrite is the 
pits. | would like to inform her, 
however, that there is another 
great word processor from 
Electronic Arts that she didn't 
mention. PaperClip Ill is, par- 
don the expression, the cat's 
meow for the Commodore. 

| had been using an old 
copy, but when | tried this 
new version, it just blew my 
mind. File handling is a 
breeze. It will support two 
drives and a RAM cartridge. 
It has a 40,000 word spelling 
checker that can be expand- 
ed to 50,000 on a 1541 and 
100,000 on a 1571. 

I've tried most of the word 
processors that Dorothy sug- 
gested, but I'll keep Paper- 
Clip Ill. 

OK, enough already. I'll go 
away. 

DAVE WASENDORF 
DENVER, CO a] 


Saving documents 


with the same 
filename, using 
multiple 
drives, and an 
overlooked 
word processor 


JANUARY 1993 COMPUTE 


G-17 


G-18 


Build a simple 
program to 

read any file and 
count the bytes. 


MACHINE LANGUAGE 


Jim Butterfield 


A SIMPLE FILE 
COUNTER 


Let's build a simple program 
to read a file and count its 
bytes. Directory listings just 
give blocks, where a block 
can hold from 1-254 charac- 
ters. Thus, a ten-block pro- 
gram could have between 
2287 and 2540 bytes. At 
times, though, it's nice to get 
an exact byte count for a file. 

Filecount will work on any 
Commodore 8-bit machine. It 
could be easily modified for ear- 
lier machines, such as the PET 
or CBM; the only difference is 
in the location of the ST status 
byte ($90 or 144 on the recent 
machines, $96 or 150 on the ear- 
ly ones). It works on program 
(PRG), sequential (SEQ), and us- 
er (USR) files. It won't give use- 
ful results on relative (REL) 
files, which need special code 
to detect end of file. 

The program gives you a bo- 
nus: It identifies the last char- 
acter on the file and tells you 
how many characters of that 
type are at the end. BASIC pro- 
grams usually end with three 
0 bytes. Data files typically 
end with a single Return (char- 
acter 13). And files received 
from a communications link 
may have quite a few pad char- 
acters stuck on the end. 

It's quite practical to open 
and close files in machine lan- 
guage, but programmers of- 
ten avoid doing so. These two 
actions are not time intensive 
and are often easier to code in 
BASIC. The BASIC portion of 
Filecount asks for the filename 
and opens the file as logical de- 
vice 1. When the machine lan- 
guage program has complet- 
ed its work, it gives control 
back to BASIC, which closes 
the file. 

The subroutines that we 
use to read the file are as fol- 
lows: $FFC6 CHKIN (connect 
the input stream to file X), 
$FFC9 CHKOUT (connect the 


COMPUTE JANUARY 1993 


output stream to file X), 
$FFCC CLRCHN (clear input/ 
output streams to normal), 
$FFE4 GETIN (get a character 
from the input stream), $FFCF 
CHRIN (same as $FFE4 for 
file input), and $FFD2 
CHROUT (send a character to 
the output stream). 

Since Filecount is con- 
cerned only with reading a 
file, it uses $FFC6 to connect 
to the file, $FFE4 to read a char- 
acter from the file, and $FFCC 
to disconnect from the file. Stat- 
us word ST, at $90, will be test- 
ed to detect the end of file. 

The program provides two 
bytes for each of the two count- 
ers (total byte count at $2050/ 
1 and number of times the last 
character has repeated at 
$2052/3). The last character 
seen is also stored in memory 
at address $2054. 

Our program starts at hex 
address 2000, decimal 8192. 
First, it clears the counters 
with LDX #0, STX $2051, STX 
$2052, STX $2053. Register X 
is still at 0, which we bump 
with INX and then store the 
last counter value with STX 
$2050. That initializes the 
byte counter to 1 instead of 0. 

Logical file 1 was opened 
earlier in the BASIC section of 
the program. Register X still 
contains a value of 1, so we 
connect to this file with JSR 
SFFC6. We read our first char- 
acter with a call to $FFE4, and 
store it at $2054, our last-byte- 
received address. 

At address $2018, we're 
ready to start the input loop. 
First, we check ST and exit if 
we find a value other than 0, 
and then LDA $90, BNE 
$2041. At $201C, we read the 
character and bump the byte 
counter: JSR $FFE4, INC 
$2050, BNE $2027, INC 
$2051. We bump the last-char- 
acter count: INC $2052, BNE 
$202F, INC $2053. 

Now we check to see if 
there's a new last character: 
CMP $2054, BEQ $2018. If we 


don't branch back to the loop, 
we have a different last char- 
acter. STA $2054 logs the char- 
acter, and then we reset the 
counter with LDA #$00, STA 
$2052, STA $2053. The Z flag 
will always be set at this point, 
so we branch back to the loop 
with BEQ $2018. 

If we detected end of file ear- 
lier, we will have branched out 
of the loop to address $2041. 
There, all we need to do is dis- 
connect the input stream and 
return to BASIC. We do that 
with a simple JMP $FFCC. 

In the BASIC loader, the pro- 
gram pokes the machine lan- 
guage code into place. At line 
300, it asks the user for a file- 
name and opens the file. 
OPEN is checked for validity 
via the command channel; 
any problem is reported at 
line 330. 

BASIC calls the machine 
code with a SYS command; the 
file work is done very quickly. 
When it's over, the BASIC pro- 
gram checks for errors at line 
350. Then the file is closed, and 
the statistics are read with 
PEEK commands. 


HP 106 DATA 162,0,142,81,32,14 
2,82,32,142,83,32,232,1 
42,86,32 

QG 11@ DATA 32,198,255,32,228, 

255,141,84,32,165,144,2 

G8,37,32,228, 255 

DATA 238,80,32,208,3,23 

8,81,32,238,82,32,208,3 

1238,83,32 

RM 136 DATA 265,84,32,240,228, 
141,84,32,169,8,141,82, 
32,141,83,32 


SE 120 


CQ 146 DATA 240,215,76,204,255 
AP 2G FOR J=8192 TO 8259 

EJ 21G READ X:T=T+X 

BP 226 POKE J,X 

AE 23¢ NEXT J 

AK 246 IF T<>8286 THEN STOP 

XF 30@ INPUT "NAME OF FILE";FS 


JQ 316 OPEN 15,8,15 

BP 326 OPEN 1,8,3,FS 

CS 336 INPUT#15,E,ES:IF E<>G T 
HEN PRINT E$:CLOSE 15:8 
TOP 

SYS 8192 
INPUT#15,E£,E$,E£1,£2:1F 
{SPACE}E<>@ THEN PRINT 
{SPACE}E$:CLOSE 15:STOP 
JC 36G CLOSE 1:CLOSE 15 

HQ 37@ PRINT PEEK (8272)+PEEK(8 
273) *256; "CHARACTERS" 
N=PEEK (8274) +PEEK (8275 
#256 

PRINT "LAST"; 

IF N>@ THEN PRINT N+1;" 
CHARACTERS: "; 

IF N=@ THEN PRINT " CHA 


BH 346 
SB 350 


AE 38@ 


PF 390 
FX 46¢ 


XR 416 
RACTER: " 
DC 42@ PRINT PEEK(8276) im] 


The Gazette 
Productivity 
Manager 


(Formerly PowerPak) 


Harness the productivity 
power of your 64 or 128! 


Turn your Commodore into 

a powerful workhorse, keep track 
of finances, generate reports 
in a snap, manage your 
money in minutes— 

all with the new 1991 
Gazette Productivity 
Manager! Look at all 
your 64/128 Productivity 
Manager disk contains. 


ORDER YOUR 
1991 GAZETTE 
PRODUCTIVITY 
MANAGER 
TODAY! 


GemCalc 64 & 128— 

A complete, powerful, user- 

friendly spreadsheet with all 
the features you’d expect 
in an expensive commercial package 
(separate 64 and 128 versions are included). 
Most commands can be performed with a single keypress! 


Memo Card—Unleashes the power of a full-blown 
database without the fuss! Nothing’s easier—it’s a 
truly simple computerized address file. Just type in 
your data on any one of the index cards. Need to edit? 


Just use the standard Commodore editing keys. (MasterCard and Visa accepted on orders with subtotal over $20). 
Finished? Just save the data to floppy. What could be | 
easier? DYES! please send me __ Productivity Manager disk(s) 
. A A ($14.95 each), 
Financial Planner—Answers all of those questions Subtotal 


concerning interest, investments, and money manage- 
ment that financial analysts charge big bucks for! You 
can plan for your children’s education and know 
exactly how much it will cost and how much you need 
to save every month to reach your goal. Or, decide 
whether to buy or lease a new car. Use the compound 


I 
| 
I 
| 
Sales Tax (Residents of NC and NY please add appro- 
| 
I 
| 
| 
1 
i] 

interest and savings function to arrive at accurate 
| 
| 
I 
| 
| 
1 
| 
| 
I 
| 
| 
| 


priate sales tax for your area. Canadian orders, add 
7% goods and services tax.) 

——— Shipping and Handling ($2.00 U.S. and Canada, $3.00 
surface mail, $5.00 airmail per disk.) 

—_— Total Enclosed 

— Check or Money Order — MasterCard —_ VISA 


Credit Card No. 


Signature 


estimates of how your money will work for you. 
Compute the answer at the click of a key! 


(Required) 
Daytime Telephone No. 


Name 


Address 
City 
State/ up/ 
C—O 

Send your order to Gazette 1991 Productivity Manager, 
324 W. Wendover Ave., Ste. 200, Greensboro, NC 27408. 


DON’T MISS OUT ON THIS 
POWERFUL WORKHORSE! 


Beware of the 

many pitfalls that 
Can accompany 

the INPUT command. 


G-20 


BEGINNER BASIC 


Larry Cotton 


HOW ABOUT 
SOME INPUT? 


Happy New Year! As prom- 
ised earlier, I'll continue in my 
backward-looking mode for 
the next few columns. This 
month, we'll review one of the 
most basic of BASIC state- 
ments: INPUT. Like GET and 
WAIT, INPUT is a command 
that acts as an interface be- 
tween the computer and the us- 
er; it waits for him or her to 
type something. Unlike GET 
and WAIT, however, INPUT 
adds a prompt in the form of 
a question mark and a blink- 
ing cursor—and requires the 
user to press the Return key. 
Here's INPUT at its simplest. 


10 INPUT NS 


If you enter this and run it, 
you'll notice something very 
quickly—it's not user-friendly. 
The only thing it prints is a 
question mark followed by the 
cursor. Sure, it works; just 
type something and press Re- 
turn. (I recall several comput- 
er novices—including my- 
self—dutifully typing whatever 
INPUT was asking for and 
then sitting back, expecting 
that the program would know 
that we'd finished typing. The 
only way it knows is for you to 
press Return.) 

Now enter PRINT N$ and 
press Return. You'll see an ex- 
act duplicate of what you've 
typed. N$ is a string variable, 
which means that each charac- 
ter in the string is treated liter- 
ally. That is, if you’d entered 
numbers rather than letters, 
they would've been treated 
just like letters—they can’t be 
added, subtracted, multi- 
plied, and so on. Incidentally, 
N$ will store that literal string 
of characters in memory until 
you replace it with some oth- 
er information or turn off the 
computer. 

With a little effort on the pro- 


COMPUTE JANUARY.1993 


grammer's part, INPUT can 
be made much friendlier. Try 
adding a prompting phrase be- 
tween INPUT and N6$, as in 
the following example. 


10 INPUT“ YOUR NAME”;N$ 


Now INPUT takes on a much 
friendlier face. Please note 
the semicolon between the 
last quotation mark and the 
string variable, and the fact 
that the question mark is part 
of INPUT itself. 

There are still some glaring 
downsides to INPUT. One is 
that, without additional pro- 
gramming, the user can 
move the cursor anywhere on 
the screen, even scrolling com- 
pletely out of view. The sec- 
ond thing that | dislike about 
INPUT is that the Run/Stop 
key becomes inoperative; you 
can't debug a faulty INPUT 
statement by pressing it. On 
the other hand, the Clr/Home 
key is quite alive and well. 
Press it (shifted), and the en- 
tire screen goes blank. It can 
be frustrating when your 
prompt disappears. Let's re- 
write the above line. 


10 INPUT‘WHAT CAN | 
COPY”;N$:PRINT‘(2 
spaces)”N$ 


Try entering several words or 
characters, pressing Return af- 
ter each. Whatever you type 
each time will be printed be- 
low it. However, if you move 
the cursor, the only thing that 
the variable N$ will become is 
whatever's on the line with the 
cursor. Run the program 
again, enter ABC, cursor 
down a couple of lines, then 
enter XYZ, and press Return. 
You'll find that N$ contains on- 
ly XYZ. 

Circumventing all these pit- 
falls takes quite a bit of addi- 
tional programming. | cov- 
ered that in the “Beginner BA- 
SIC” columns of September 
and October, 1991. If you 


need a longer prompting line, 
such as ENTER YOUR BIRTH- 
DAY IN YY/MM/DD FORMAT, 
you may wish to combine 
PRINT and INPUT. 


10 PRINT“ENTER YOUR BIRTH- 
DAY IN YY/MM/DD FORMAT” 
20 INPUT B$ 


This looks somewhat awk- 
ward, because the question 
mark falls on the line below 
the prompting statement. 

Another pitfall of INPUT is 
that it's pretty fussy about 
what's entered. String-varia- 
ble INPUTs spit out the confus- 
ing EXTRA IGNORED error 
message whenever they en- 
counter a colon or comma 
(but periods and semicolons 
sail right through). On the oth- 
er hand, INPUT will accept an- 
ything if it's enclosed in quo- 
tation marks. Of course, your 
typical user wouldn't be ex- 
pected to know or use that 
fact. Without additional pro- 
gramming, a simple numeric- 
variable INPUT (such as /N- 
PUT N) would announce the 
equally cryptic REDO FROM 
START error message if the us- 
er should enter anything but 
numbers. 

I'll leave you for this month 
with a simple trick that sup- 
presses the question mark 
that is part of INPUT. This 
lets you enter your prompting 
phrase as a statement rather 
than a question. 


10 POKE19,64 

20 INPUT {CLRYDOWNJENTER 
YOUR FIRST NAME: ”;N$ 

30 POKE19,0 

40 PRINT:PRINT:PRINT“IS YOUR 
NAME ACTUALLY "N$‘‘?” 


Using this method, you must 
enter something other than 
just Return. Poking a 64 to reg- 
ister 19 temporarily suppress- 
es the question mark that nar- 
mally follows; poke 0 to the 
same register to restore the 
question mark to normal. © 


D'IVERSIONS 


Fred D'lgnazio 


CRAZY FRED’S 
HIGH-TECH 
GARAGE SALE 


Have you ever wanted to 
make some money quickly? 
You might consider holding a 
high-tech garage sale. 

My family and | recently 
moved from our old house on 
one side of East Lansing, Mich- 
igan, to an even older house 
on the other side of town. As 
always, the move was extreme- 
ly painful for me. | am an incred- 
ible pack rat, and moving to a 
new house forces me to face 
all the odds and ends that | 
have packed away, year after 
year. Even worse, | have to de- 
cide their fate! 

My son, Eric, coined a 
name for all these precious 
items. He calls them jonque (it 
rhymes with chonk). 

Eric, another pack rat, 
claims that he and | are ingen- 
ious in the ways we find to 
squeeze jonque into itty-bitty 
spaces—all over the house. 
Eric calls this technique jon- 
que compression. After jon- 
que compression, the jonque 
stays the same size, but by find- 
ing just the right cubbyhole, a 
jonque expert is able to fit an 
incredible amount into the 
same old house. 

The jonque compression is 
successful if it meets the follow- 
ing criteria. 


1. The jonque apparently 
seems to vanish. 

2. You immediately forget 
that you ever had the jon- 
que. 

3. You're happy, since you 
didn’t have to throw the jon- 
que away. 

4. Your spouse or parents 
have no idea how much jon- 
que is accumulating invisi- 
bly around them. 


If you are an especially 
skilled jonque compressor, 


this feeling of bliss can contin- 
ue for years. But one day your 
bliss bubble has to pop, and 
then the jonque suddenly de- 
compresses and tumbles 
back into your life. 

In my case, the problem is 
magnified because not only 
do | collect the normal kinds of 
jonque—old magazines, 
books, T-shirts, mugs, and 
posters—but | also collect com- 
puter jonque. In fact, | might 
be one of the world’s leading 
collectors of computer jonque. 

I've thousands of disks with 
old programs, freeware, share- 
ware, vaporware, la-la-ware. 
You name it; I've saved it. 

I've got old computer parts: 
floppy drives, tape drives, 
backup tape drives, hard 
drives, CPUs, digitizers, mon- 
itors, printers, and keyboards. 

And it gets worse—far 
worse. | guess the whole dirty 
truth must now be told. | don’t 
just collect computer jonque. 
| also collect multimedia jon- 
que: cameras, eyepieces, 
viewfinders, dusty old speak- 
ers, miniature musical key- 
boards, tiny tape recorders, an- 
cient VCR decks, portable 
phones, and prehistoric Radio 
Shack TV sets. Add to the list 
batteries, AC adapters, used 
cassettes, wires, and cables. 
Cables? I've got computer ca- 
bles, lots of cables, truckloads 
of cables, mountains of ca- 
bles. I've got big cables, little 
cables, fat cables, skinny ca- 
bles, even mystery cables 
that have weird little ends that 
don’t make sense. (What did 
they come out of? Where did 
they go?) And you know? | 
think my cables have babies. 
Male cables get with female ca- 
bles and have adapters. 

Having these deep-seated 
addictions must inevitably 
lead to one of three outcomes: 


1. You get a divorce. 

2. You run away: from home. 

3. You hold a high-tech ga- 
rage sale. 


| chose option 3 recently, and 
it was a resounding success. 
| want to report that it saved 
my marriage and my sanity. 

My assistant, Joanne, 
placed ads for a high-tech 
garage sale in all the local pa- 
pers and weekly shopping 
guides. She also printed fliers 
on our home computer (the 
one we wanted to keep), and 
we hung them on every store, 
dormitory, and gas station 
bulletin board within a three- 
mile radius of our home. We 
uploaded ads via modem on- 
to every electronic BBS that 
we could reach. We painted 
homemade signs and tacked 
them onto telephone poles at 
every major intersection near 
our home. We offered free 
soda pop to every customer 
who made a purchase at our 
sale. Last, we hired two hardy 
teenagers (Joanne and Tim) 
to run the sale along with my 
son Eric. 

On the morning of the sale, 
Eric, Joanne, and Tim 
showed up at 7:00. Their first 
customer was waiting at the ga- 
rage door. The rest is history! 
Two days later, we said good- 
bye to our last customer and 
rolled down the door. We had 
started the sale with ten eight- 
foot tables piled high with 
disks, computer parts, cables, 
clothes, and baby furniture. 
We finished the sale, 200 cus- 
tomers later, with a mere eight 
grocery bags of stuff that we 
gave to the Salvation Army. 

| ran around the driveway 
during the sale pretending | 
was Crazy Fred—as in Crazy 
Fred's High-Tech Garage 
Sale. | gave away free soda 
pop. | greeted customers. | 
wore my pink hat that says Hol- 
lywood on the front. And | vid- 
eotaped the entire event— 
including the memorable 
scene where a dozen people 
were bickering and bargain- 
ing over my prize cables. 

What a sale! What a show! 
And we even made money. © 


JANUARY 1993 COMPUTE 


A pack rat must 
eventually do one of 
three things: get 

a divorce, run away 
from home, or 

hold a garage sale. 


G-21 


software packages 


G-22 


that no serious 
GEOS user should 
be without. 


GEOS 


Steve Vander Ark 


ULTIMATE GEOS 
(PART 3) 


Last month, | outlined my dif- 
ficulty in trying to find the per- 
fect file manager software to ac- 
company my ultimate GEOS 
system. | have hopes for 
geoShell and its promise to 
handle four drives and native 
mode partitions. Unfortunate- 
ly, [haven't received a copy of 
the program for testing yet. So 
while I'm waiting for geoShell, 
I'l check out the rest of my soft- 
ware choices. 

Probably the best applica- 
tions for GEOS are the ones 
put out by GeoWorks itself. 
GeoWrite, for example, has no 
serious competitors for the 
word-processing prize. There 
are no other spreadsheet pro- 
grams around for GEOS, so 
geoCalc is a shoo-in, There 
are a few card-file databases, 
but they can’t hold a candle to 
geoFile. 

The release of geoCanvas 
by Creative Micro Designs 
has given graphics aficiona- 
dos an exciting alternative to 
geoPaint. When it comes 
down to it, though, geoCan- 
vas is more of an add-on pro- 
gram than a replacement. Nei- 
ther program has all the fea- 
tures a serious graphics user 
needs, but that's OK. Their 
files are compatible, and it's 
not hard to skip back and 
forth between them. As for 
desktop publishing, geoPub- 
lish has no equal. Its one draw- 
back is that it works only in 40- 
column mode, but even with 
that limitation, it's a marvel. 

Once you've picked up all 
the official GEOS products, 
you'll still need several addition- 
al packages. Here's a list of 
what | feel are essentials. 

GeoWizard. It's hard to find 
an accurate description of 
geoWizard. Jim Collette, the au- 
thor, calls it the “ultimate 
GEOS utility,” and he’s right. 
GeoWizard is almost a minia- 


COMPUTE JANUARY 1993 


ture operating system that’s 
available at a click of a mouse 
from nearly anywhere in 
GEOS. GeoWizard temporari- 
ly suspends whatever applica- 
tion you're running and offers 
a menu of choices. 

There are several great op- 
tions, but the one that makes 
geoWizard so incredible is a 
dialog box that lets you run 
any application on any active 
drive, straight out of your orig- 
inal application. When you 
quit the new application, 
you're returned to where you 
left off in your first task. This 
task-switching ability quickly 
becomes indispensable. 

Minidesk. This desk acces- 
sory is bundled with geoWiz- 
ard. When you call it up from 
within an application, you're 
presented with a control pan- 
el that lets you rename or 
erase files, or copy them from 
drive to drive. For instance, if 
you have a current word proc- 
essor document in an REU, 
you can copy it to a physical 
drive for permanent storage. 

Perfect Print. Sure, GEOS 
can do some nifty graphics, 
and proportional GEOS fonts 
make your writing look more 
professional, but you're still 
stuck with jaggy printouts. 
That's all changed, thanks to 
GEOS LQ, the geoWrite print- 
er routine found in the Perfect 
Print package. The collection 
of high-definition fonts that 
GEOS LQ uses prints almost 
as smoothly as a laser, even 
from a lowly 9-pin printer. 

Scrap Can. If you use graph- 
ics, you'll need this small utili- 
ty that’s part of the geoCanvas 
collection. It provides you 
with a preview of any geoPaint 
page, from which you can 
copy any portion as a photo 
scrap. Other programs will do 
this for you, but none as well 
as Scrap Can. After creating 
your photo scrap, you can 
open another geoPaint docu- 
ment and paste it in wherever 
you like. Even if you don’t 


think you need another paint 
program, you'll want geoCan- 
vas just to get Scrap Can. 

Conversion programs. You 
probably use GEOS for just 
about everything, but not 
everyone does, It's important, 
therefore, for GEOS to get 
along with the rest of the Com- 
modore world. Data files from 
other programs—graphics 
from The Newsroom, for exam- 
ple, or text files from 
SpeedScript—have to be ac- 
cessible and usable for 
GEOS applications. Conver- 
sion programs let you reach 
out and grab nearly every va- 
riety of graphic or text data 
around, including some non- 
Commodore types. 

For graphics, you'll want 
Graphics Grabber, Import Run- 
ner, Graphic Storm, MacAt- 
tack Il, and geoGIF, to name 
a few, Text files require Text 
Grabber or Wrong Is Write. 
And, of course, to transmit any 
GEOS file via modem, you 
need Convert 2.5 to change 
the file into Commodore DOS 
format and back again. 

GeoTerm. The only major ap- 
plication not included with 
GEOS is a terminal program. 
GeoTerm, an excellent offer- 
ing from RUN magazine's Pow- 
er Pack II disk, nicely fills the 
gap. OK, it's not the best termi- 
nal program ever written, but 
it runs under GEOS, has the 
Convert utility built in, and has 
a surprisingly large buffer to 
boot. For people like me who 
are loathe to leave the world of 
point and click for the boring 
command line of Commodore 
DOS, geoTerm is perfect. 

So that's it, right? The ulti- 
mate GEOS system? Hardly. U/I- 
timate means ‘the best there 
can be," and frankly, that 
term will be up to every user 
to define. As a matter of fact, 
| don’t own all the fancy equip- 
ment I've discussed, but my 
GEOS system does every- 
thing | want, and that’s about 
as ultimate as | need. oO 


Roquires: 
Print Shop 
Version 2.0 


Over a 140 
new ways 
to Createa 
Western 
Style with 
your 
Commodore 
64/128 


Computer 


or 
Print Shop 

V1.0 with the 
Companion 


Graphics, Borders, and Fonts for the Print Shop - 


or 
Print Shop 
V1.0 whh the 
Holiday 
Edition 
weet 
Uses the 
‘same printer 
‘as your Print 
Shop. Side A 
of Sido B 


WESTERN 
HERITAGE 


Wa tke (US nds) 
‘Check, Money Order, 
Masior Card of Visa 
509-276-6928 


pice Seto, 


OR ee me Trademarks of 


Broderbund 


Version for the Commodore 64 Includes 9 Pin and 7 Pla Printers, ‘Soniaic, 


Create a Total Western Environment with 143 designs 
90 Graphics, 42 Borders and 11 Fonts for the Print Shop. 
+ Invite Your Friends to a Western Birthday Party, Bar-B-Q or Card Game. 
* Instructions to make 10 Gunfighters of the Old West, Wanted Posters. 
«Designs for over 50 Western Business Activities and Club Events. 
* Make Posters for, Horse Shows, Rodeos, Hay Rides, Cattle Drives. 
«Kids write Secret Messages to friends with Authentic Indian Symbols, 
+ 143 Designs of Gunfighters, Horses, Cattle, Brands, Waggons, Rope, 
Saddles, Horse Shoes, Indians all with Borders and Fonts to match, 


f AS j rth I 
REZ 
NS td We GRAPHICS ™ 

Horse Feathers Graphics, N. 27310 Short Road, Deer Park, Wa. 99006-9712 


BBG RAM 


Battery Back-up 
Ram Disk for 
GEOS 2.0 and 
GEOS 128, 2.0 


* Magnitudes faster than any floppy or 
hard drive 

* 2MEG model has capacity of TEN 1541's 

* Includes GEOS application to select one of 
up to five 1571's 

* Reboots GEOS from BBG Ram quickly and quietly 

¢ Supplied with wall mount power supply and 
battery cable and holder 

¢ Automatically detects power out and switches 
to back-up mode 

¢ Activity light indicates access 

* Battery used only when wall mount AC power 


SOFTWARE CLOSEOUTS 


For Commodore 64 & 128 


Curse of Azure Bonds, Hillsfar, B-24, 
Pool of Radiance, Roadwar 2000, 
Heroes of the Lance, Dragons of 
Flame, or Pro-Tour Golf. 


MICROPROSE ssssssssssssssssss $14.50 EACH 
Destroyer Escort, Netherworld, Rick 
Dangerous, Spitfire Ace, Hellcat Ace, 
Solo Flight, Stunt Track Racer, F-15 
Strike Eagle, Airborne Ranger 


PSI 5 Trading Company, Law of the 
West, Comics, Killed Until Dead, 
Hardball, Dambusters, Ace of Aces, 
Fight Night, or Jet Boys. 


Alcon, Arkanoid, Arkanoid |!, Bubble 
Bobble, Qix, Operation Wolf, Rambo 
Ill, Rastan or Renegade. 


Mastertype/Writer Bundle, Perfect 
Score SAT, Gauntlet 2, Bop 'n Rumble, 
Color Me, Into the Eagle's Nest,Indoor 
Sports, Boston Computer Diet, 
Songwriter or Golden Oldies. 


ELECTRONIC Z00 20 GAME PACK $14.50 


WOWI! LESS THAN $1 PER GAMEIIIIIL 
Includes: Battlefield, Skatin’ USA, Gun 
Fighting, Cross Fired, Spooky Castle, Death 
Race, Snowball in Hell, Globe Trotter, 
Periscope Up, Killing Machine, Super Kid, 
Hobgoblin, Cave Mania, Zoomerang, 
Crack Up, Zodia, Survivors, Pro Golf, 
League Challenge & Super Kid in Space. 
WE HAVE LOTS MORE C-64/128 PLUS 
TONS OF SOFTWARE FOR IBM, APPLE, 
MAC, AMIGA, ATARI & MORE! 


COMPSULT 
P.0, BOX 5160 
SAN LUIS OBISPO 
CA 93403-5160 


Under Fire, Ripper!, Tsushima, Stocks 
& Bonds, Dr. Ruth, Parthian Kings, 
Jupiter Mission 1999, T.A.C., Maxwell 
Manor, Statis-ProBaseball,GulfStrike, 
Guderian, Mission on Thunderhead, 
Super Sunday, or Panzer Jagd. 


INFOCOM BARGAINS .o.sssss.4.$5.00 EACH 
Starcross, Suspended, Zork 2 or 3, Deadline. 
DSURPE SPORTS BUND 


Superstar Ice Hockey, Superstar Soccer, 3-D 
Pinball, Billiards, $ 1, Shooting Gallery, 
Crazy Pool, Foosball, Bowling, Darts, Air 
Hockey, & Ping-Pong!!! GREAT PACKAGE!!! 


Includes: Mutants, F.I.S.T., Tau Ceti, 

Uridium, Tai-Pan, Cyrus Chess, Army 

Moves, Demolition Mission, Doc the 
Destroyer & Bad Street Brawler. 


THREE-SIXTY BARGAINS .......85 EACH 
Warlock, Dark Castle or Thud Ridge. 


Batman Caped Crus: Robocop, 
Batman the Movie, Bad Dudes, or 
Monday Night Football. 


Castlevania, Double Dribble or Metal Gear 


Heat Wave, Harmony or Steel Thunder. 


TO ORDER: Send check or money order, includin 
shipping charges of$5 for U.S.A, $8or Canada, $12 
others. California addressesmust include 7.25% sales 
tax. Toreceive our complete catalog of over 2,000items 
{or all computer types, send $2 in cash or postage 
stamps. The catalogs FREE with any order. To check or 
anitem not listed here, cal (805) 544-6616, 


VISA/MC ORDERS CALL TOLL-FREE 
1-800-676-6616 


Credit Card Orders Only!!! ! ($25 minimum) 


Circle Reader Service Number 220 


and cable supplied 


BBU 


Battery Back-up 
Interface 

Module for 
Commodore 

17xx REU’s and 
Berkley Softworks’ 
GEORAM 512 


Reset button without data loss 

Activity indicator light during access 

Battery low voltage indicator 

Wall-mounted power supply and battery holder 


GEOS compatible, allows reboot to GEOS 
Automatic battery back-up, no switches to push 
Battery powers unit only when AC power off 

BBU supplies power to 17xx REU’s and GEORAM. 


Commodore heavy power supply not required 


FOR INFORMATION CALL $hQ°° 


Supply off 1-518-436-0485 
MODEL 512 1 MEG 2 MEG 
$CALL $CALL $CALL GEOS registered Trademark of Berkley Softworks, Inc. 
CG Please Add: 
e PER FORMAN CE 5 Upper Loudon Road U.S. $6.00 S&H 
PE AIP En Ce Re AS ISekSitne: Loudonville, New York 12211 Canada $10.00 S&H 
$4.00 C.O.D. 


Circle Reader Service Number 153 


Peek hidden RAM, 
add FAST and 
SLOW commands to 
your 64, and 
convert decimal 

to hex. 


G-24 


PROGRAMMER’S PAGE 


Randy Thompson 


MORE GREAT TIPS 


Here are some great program- 
ming tips from our readers. 


Super Peek 
There are 16K bytes of RAM 
hiding beneath the 64's ROM: 
there are 8K at 40960-49151 
($AO00-$BFFF) and another 
8K at 57344-65535 ($E000- 
$FFFF). These two blocks, un- 
touched by BASIC, make ide- 
al locations for storing data 
such as sprite definitions or 
bitmapped screens. The 
most convenient way to ac- 
cess memory via BASIC is 
with the POKE and PEEK com- 
mands. While you can poke 
values into either of these two 
memory blocks, you cannot 
peek values stored here. The 
only values you can read 
from 40960-49151 and 
57344-65535 using PEEK are 
those stored in ROM, not the 
underlying RAM. 
This program wedges itself 
into BASIC so that every time 
you peek a ROM address, 
the PEEK function temporarily 
switches out ROM, reads the 
underlying RAM, and returns 
the byte value stored there by 
a previous POKE command. 
GH 10@ REM SUPER PEEK 
BP 11@ FOR I=688 TO 755:READ D 
:POKE I,D:C=C+D:NEXT 
IF C<>8212 THEN PRINT " 
ERROR IN DATA STATEMENT 
S":END 
FJ 13@ SYS 686 
DM 144 DATA 160,265,146,17,3,1 
60,2,146 

FP 156 DATA 18,3,169,76,133,12 
4,169,191 

MG 168 DATA 133,125,169,2,133, 
126,96,201 

DJ 176 DATA 194,208,2,169,183, 
201,58,144 

RK 186 DATA 1,96,76,128,0,32,2 
47,183 

XE 190 DATA 164,20,165,21,146, 
228,2,141 

AM 200 DATA 229,2,162,53,126,1 
69,47,133 

DE 210 DATA @,134,1,172,228,2, 
162,55 

AH 226 DATA 126,133,6,134,1,88 


,169,0 
PX 238 DATA 76,145,179,0 


BJ 120 


This program makes access- 
ing hidden RAM much easier. 


A. S. BHAGWANDEEN 
MARABELLA, TRINIDAD 


COMPUTE JANUARY 1993 


Faster 64 
There are several hacks out 
there that effectively double 
the computer's speed by ac- 
tivating the 128’s FAST mode 
while running the 128 as a 
64. None, however, are as el- 
egant as the one listed below. 
After running the following 
128 64-mode program, you 
can activate FAST mode sim- 
ply by using the previously 
128-only command, FAST. To 
disable FAST mode, just exe- 
GD 1060 REM 64 MODE FAST AND SL 
cx 1106 an I=828 TO 976:READ D 
:C=C+D:NEXT 
SC 120 IF C<>15@57 THEN PRINT 
{SPACE}"ERROR IN DATA S 
TATEMENTS”: END 
PP 138 SYS 945 


QX 146 DATA 160,1,177,122,201, 
78,240,7 


MP 15@ DATA 201,83,240,54,108, 
224,3,208 

RP 160 DATA 177,122,201,65,240 
13,76,72 

PS 176 DATA 3,206,177,122,201, 
83,240,3 

KB 180 DATA 76,72,3,200,177,12 
2,201, 84 

XA 190 DATA 246,3,76,72,3,32,1 
15,08 

QA 280 DATA 32,115,6,32,115,8, 
32,115 

CA 218 DATA G,169,3,141, 48,208 
176,72 

XX 220 DATA 3,234,200,177,122, 
201, 76,240 

HX 236 DATA 3,76,72,3,200,177, 
122,201 

QQ 240 DATA 79,240,3,76,72,3,2 
00,177 

JD 250 DATA 122,201,87,240,3,7 
6,72,3 

ER 260 DATA 32,115,0,32,115,@, 
32,115 

QH 270 DATA G,32,115,6,169,0,1 
41,48 

BP 280 DATA 208,76,72,3,234,17 
3,8,3 

XX 290 DATA 201,60,248,21,141, 
224,3,173 

FB 3G DATA 9,3,141,225,3,169, 
60,141 

BR 310 DATA 8,3,169,3,141,9,3, 
96 


AX 320 DATA 234,76,208,3,96 


cute the command SLOW. 

Due to the manner in which 
this program adds FAST and 
SLOW to BASIC's vocabulary, 
you must follow one simple 
rule when using either of 
these two commands in an IF 
statement: Always precede 
the command with a colon. 
For example, IF X<>Y 
THEN:FAST. 

Note that the 64's 40-col- 
umn screen will go blank 


whenever you put the comput- 
er into FAST mode, just as it 
would in 128 mode. 


KEN MCNICHOLAS 
HICKSVILLE, NY 


Hex Converters 

The next two listings convert 
a byte value (0-255) from hex- 
adecimal to decimal and 
from decimal to hexadecimal, 
respectively. These programs 
use the variable D to return or 
store decimal values and the 
variable H$ to store or return 
hexadecimal values. 


10 REM DECIMAL TO HEX 

20 INPUT‘'DECIMAL VALUE”;D 

30 Y=INT(D/16): Z=16*Y:H$=CHR$ 
(Y+55+(7*(Y<10)))+CHR$ 
(D-2Z+55+(7*((D-Z)<10))) 

40 PRINT'HEX VALUE IS $”;H$ 


10 REM HEX TO DECIMAL 

20 INPUT“HEX VALUE $”;H$ 

30 L=ASC(LEFTS(HS,1)): 
R=ASC(RIGHTS(HS, 1)): 
D=((L-55-7*(L<57))*16) 
+R-55-7*(R<58) 

40 PRINT“DEC VALUE IS ";D 


A note regarding the hexa- 
decimal-to-decimal conversion 
program: Be sure that H$ is a 
two-character string before 
you convert it to decimal. If HS 
is empty, the program will 
abort with an illegal-quantity er- 
ror. If H$ contains only one 
character, that character is dupli- 
cated (F becomes FF, for exam- 
ple). If HS contains more than 
two characters, only the first 
and last characters are consid- 
ered part of the byte value 
(O9FAC becomes OC). 


PAUL FOLLINI 
AMHERST, NS. 
CANADA 


Send your programming tips 
to Programmer's Page, COM- 
PUTE's Gazette, 324 West 
Wendover Avenue, Suite 200, 
Greensboro, North Carolina 
27408. We pay $25-$50 for 
each tip we publish. a] 


PROGRAMS 


ANCESTRY 


By Robert Nellist 
Genealogy can quickly become an ab- 
sorbing, addicting hobby. Here's your 
chance to start charting your family tree 
with a minimum of trouble and expense. 
Ancestry lets you enter the vital sta- 
tistics concerning aselected person's par- 
ents, grandparents, great-grandparents, 
and great-great-grandparents. This infor- 
mation can then be searched, corrected, 
saved to disk, and printed out in family 
tree form. 


Getting Started 

Ancestry is written entirely in BASIC. 
To help avoid typing errors, enter it 
with The Automatic Proofreader; see 
“Typing Aids” elsewhere in this sec- 
tion. Be sure to save a copy of the pro- 
gram before you exit Proofreader. 


Creating Records 

When you run Ancestry, a menu will pre- 
sent four choices: Initial Entry, Load a 
File, Disk Directory, and Quit. Since 
you haven't as yet entered any informa- 
tion, let's press E and start creating 
some records. 

The Entry mode constantly displays 
command information at the top of the 
screen. Below this is a heading which 
changes during entry to help you 
keep track of whose record you are 
presently entering. Beneath this is the 
form that you'll be filling in for each an- 
cestor. The nonblinking cursor can be 
seen at the start of the Name line. 

Use uppercase and lowercase to fill 
in the person's name (here, the primary 
individual) and press Return. Repeat 
the procedure for each line. If you 
don't as yet have the information that's 
requested, simply press Return on the 
blank line, and the cursor will jump to 
the next one. If you press Return on a 
blank Name line, the program will skip 
the present record entirely and pro- 
ceed to the next person, Use the Inst/ 
Del key to backtrack and make correc- 
tions on the current line only. Don’t 
worry if a mistake slips by. You can eas- 
ily make corrections later. When the 
fifth and final line is entered, the next 
person's blank record form will appear. 
When all 31 records have been com- 
pleted, or if you press the up-arrow key 
(T) on a blank Name line, you'll be re- 


turned to the menu, which now con- 
tains several additional choices. 


Search and Correct 

You now have Search and Correction 
options, which operate in a similar fash- 
ion. Pressing f1 starts or halts a num- 
bered listing of all the persons whose 
records you have entered. Cursor up 
or down to the desired name, and 
press Return. If you're in Search 
mode, that person’s entire record will 
appear. If you're in Correction mode, a 
blank entry form will appear that is iden- 
tical to the one in the Entry mode. To 
change a line, type in the corrections 
and press Return. To leave a line unal- 
tered, just press Return. To end either 
option and return to the menu, place 
the cursor on the word Menu at the bot- 
tom of the listing and press Return. 


Load and Save 

Load and Save options are fairly con- 
ventional and need little explanation. 
You can view the disk directory first, if 
necessary. | recommend saving under 
the name of the primary individual to 
avoid confusion. Either option can be 
canceled by pressing Return alone. 


Printouts 
Ancestry doesn't use any special print- 
er commands, so there should be no 
compatibility problems. When you en- 
ter the Printout mode, you'll be asked 
to designate one of three names as the 
primary individual for current printout 
purposes only. This is because there is 
only room for three generations on a sin- 
gle page, although the program per- 
mits entry to the fourth generation. 
Choose option A for your first print- 
out. If you have entered all 31 records, 
you'll also want to make printouts using 
the B and C options. The program will 
then guide you through the entry of a 
chart number, letter, and date. If you 
make a mistake, you still have a final 
chance to cancel prior to the actual 
printout. 


Random Reminders 

It isn't necessary to enter all 31 records 
at one sitting. You can start and stop at 
any time. Also, it isn't necessary to com- 
plete all the records prior to printout. 
The program will simply print dotted 
lines if no information has been provid- 


ed. This will permit filling in by hand lat- 
er, if desired. 

The Spouse line doesn't appear in 
the printout. It would be a needless du- 
plication of information already pre- 
sent, and space is limited. Adjust your 
paper to start your printout as near to 
the top of the page as possible. 

There's room to include a location 
as well as a date when entering vital sta- 
tistics. It's OK to use commas and co- 
lons while entering data. 


ANCESTRY 
PK 5 REM COPYRIGHT 1993 ~ COMP 
UTE PUBLICATIONS INTL LTD 
~ ALL RIGHTS RESERVED 
HB 16 DIM BS$(50,5):SPS="...... 
Siero eeatinvetee Conese REM, 
{SPACE}** 24 PERIODS 
DTS="€24 T>":REM ** 24 C 
OMMODORE-T KEY PRESSES 
PRINT CHRS$(14)"{CLR} 
{WHT}{5 DOWN}"TAB(9) "*** 
ANCESTRY *#*":PR 


PE 28 


JK 36 


AD 48 PRINTTAB(13)"{DOWN}ROBER 
T NELLIST" 
PRINTTAB(13)"{6 DOWN}PRE 
SS ANY KEY" 
WAIT 198,15:GET M$ 
PRINT" {CLR} {2 DOWN}"TAB ( 
11)"*** MAIN MENU ***" 
IF K=l THEN PRINT" 
{2 DOWN}";:GoTO 116 
PRINTTAB(11)"{2 DOWN}E = 
INITIAL ENTRY" 
TF K=@ THEN GOTO 168 
PRINTTAB(11)"{DOWN}R = 
{SPACE}RESUME ENTRY" 
PRINTTAB(11)"{DOWN}S = 
{SPACE}SEARCH" 
PRINTTAB(11)"{DOWN}C = 
{SPACE} ENTRY CORRECTION 


XX 50 


DE 69 
AG 76 


GF 8d 
AS 98 


QJ 186 
MJ 119 


QG 120 


CJ 136 


JE 140 PRINTTAB (11) "{DOWN}E = 
{SPACE}PRINTOUT" 
PRINTTAB(11)"{DOWN}* = 
{SPACE}SAVE ENTRIES" 
PRINTTAB(11)"{DOWN}L = 
{SPACE}LOAD A FILE" 
PRINTTAB(11)"{DOWN}D = 
{SPACE}DISK DIRECTORY" 
PRINTTAB(11)"{DOWN}Q = 
{SPACE}QUIT" 

PRINTCHRS (14) 

GET M$:IF M$="E"AND K=@ 
THEN GOSUB 294:GOTO 70 
IF M$="R"AND K=1 AND Z2< 
31 THEN Z=Z+1:GOSUB 300 
:GOTO 76 

IF M$="S"AND K=1 THEN P 
=@:GOSUB 550:GOTO 79 

IF M$="C"AND K=1 THEN P 
=1:GOSUB 558:GOTO 79 

IF M$="P"AND K=1 THEN G 


CF 156 
QQ 160 
DS 176 
KM 186 


BS 185 
PA 196 


JE 206 


SK 216 
RB 226 


BS 236 


JANUARY 1993 COMPUTE G-25 


PROGRAMS 


XH 
BP 
kQ 
AF 


FH 
KB 


KH 
QP 


KD 
sQ 


BX 


BJ 


SG 


DG 


G-26 


240 
256 
266 
276 
286 
296 
360 
316 


326 
336 


340 


356 


366 


376 


-380 


396 
400 
416 


420 
439 
449 


456 
469 


478 
488 
496 


566 


516 
526 
538 


546 
556 


OSUB 1536:GOTO 78 

IF MS$="*"AND K=1 THEN G 
OSUB 1678:GOTO 70 

IF M$="L"THEN GOSUB 122 
6:GOTO 79 

IF MS$="D"THEN GOSUB 142 
@:GOTO 70 

IF MS$="Q"THEN GOSUB 213 
@:GOTO 79 

GOTO 196 

HES="PRIMARY INDIVIDUAL 
":Z=12A=1: PRINTCHRS (14) 
:GOSUB2628:GOTO316 
PRINT CHR$(14):GOSUB 20 
20: PRINT" {UP}"G$;GR$;PS 
PRINT HES;HDS$:PRINT:PRI 
NT"ENTRY #"Z: PRINT 

FOR Y=1 TO 5 
PRINTTAB (9) "{P}{LEFT}"; 
:GET AS:IF AS=""THEN 33 
@:REM *** COMMODORE-P + 
CRSR-LEFT 

IF A$=CHR$(20)AND LEN(B 
$)<1 OR AS=CHR$(34) THE 

N 330 

IF AS$=CHR$(2@)THEN BS=L 

EFTS (BS,LEN (BS) -1) :GOTO 
416 

IF A$=CHR$(13)AND Y=1 A 

ND LEN(BS)<1 THEN GOSUB 
2090:GOTO 440 
IFAS=CHR$(13)THEN BS$=BS 
+SPS$:BS=LEFTS (BS, 24) :BS 
(Z,Y)=BS$:BS="":GOTO 436 
IF ASC(A$)<32 OR ASC(AS 
)>96 AND ASC(AS)<191 TH 
EN 330 

IF LEN(B$)>23 THEN 336 

BS=BS+A$ 

PRINT A$;:IF Y=l AND AS 
"THEN Y=5:Z= 

GoTO 440 

GOTO 339 

PRINT" {DOWN}" 
NEXT:IF AS$="7"OR Z=31 T 
HEN 53@ 

Z=Z+1 

IF Z>1 THEN PS$="PARENTS 
OF PRIMARY INDIVIDUAL" 
IF Z>3 THEN GRS="GRAND" 
:PS="PARENTS OF PRIM.IN 
DIv." 

IF Z>7 THEN GS="GREAT " 
IF Z>15 THEN GS$="GREAT 
{SPACE}GREAT " 

IF Z/2=INT(Z/2)THEN HES 
="FATHER OF ":HDS=BS(A, 
1)?GOTO 526 

HES="MOTHER OF ":HDS=BS 
(A, 1) SA=A41 

GOSUB 20629:PRINT"{UP}"G 
$;GR$;P$:GOTO 310 

IF Z>@ THEN K=1 

RETURN 
PRINTCHRS (14) "{CLR} 

{2 DOWN}"TAB(3) "PRESS F 
1 TO START OR HALT LIST 
ING" 


COMPUTE JANUARY 1993 


QH 


GP 


566 
5708 
586 
5968 
680 
6190 
626 
636 
646 
656 
668 
676 
686 
696 


786 


716 
720 


736 
746 


756 
768 


776 
786 
798 
806 
810 
826 
836 
846 
858 
866 
878 
880 


890 
980 


916 


926 


936 


GET L$:IF L$<>CHR$(133) 
THEN 56 

PRINT" {CLR}";:FOR X=1 T 
or, 

IF X=Z+1THEN X=31:GOTO 
{SPACE}676 

IF X=1THEN PRINT"PRIMAR 
¥ INDIVIDUAL 

IF X=2THEN PRINT"PARENT 
s" 

IF X=4THEN PRINT"GRANDP 
ARENTS" 

IF X=8THEN PRINT"GREAT 
{ SPACE}GRANDPARENTS 

IF X=16THEN PRINT"GREAT 
GREAT GRANDPARENTS" 
PRINTTAB (3) ;X;B$(X,1 
FOR T=l1 TO 300:NEXT 

GET L$:IF L$=CHR$(133)T 
HEN X=Z 

NEXT 

PRINTTAB (4) "MAIN MENU" 
PRINTTAB (4) "RESTART LIS 

TING" 

PRINT"{2 DOWN}USE UP/DO 

WN CRSR TO SELECT THE N 
UMBER OFA RECORD TO BE 
{SPACE}"; 

IF P=@ THEN PRINT"VIEWE 
De"; 

IF P=1 THEN PRINT"CORRE 

CTED."; 

PRINT" PRESS RETURN." 
PRINT" {HOME} {DOWN} "TAB ( 
4):POKE 19,65 

LS="" INPUT L$ 
LS=LEFTS (L$, 2) :X=VAL (L$ 
):POKE 19,0 

IF L$="RE"THEN GOTO550 

LS="MA"THEN RETURN 

X<1 OR X>31 THEN 746 
P=] THEN PRINT"{CLR} 


P=6 THEN PRINT"{CLR} 

DOWN} #"X: PRINT 

FOR Y=l TO 5 

IF BS(X,1)=""THEN 55@ 

IFY=1 THEN PRINT"NAME 

{3 SPACES}: "BS (X,Y) 

IFY=2 THEN PRINT"BORN 

{3 SPACES}: "BS$(X,Y) 

IFY=3 THEN PRINT"WED 

{4 SPACES}: "BS (X,Y) 

IFY=4 THEN PRINT"DIED 
{3 SPACES}: "BS(X,Y) 

IFY=5 THEN PRINT"SPOUSE 
: "BS(X,Y) 

NEXT: IF P=l THEN 926 

PRINTTAB(12)"{4 DOWN}PR 

ESS ANY KEY" 

WAIT 198,15:GET M$:GOTO 
556 

PRINT"{CYN}{3 DOWN}TYPE 
IN LINE CORRECTLY — PR 

ESS RETURN." 

PRINT"OR PRESS RETURN A 

LONE TO LEAVE LINE AS 
{2 SPACES}IT APPEARS AB 


KQ 


KX 


KP 


QD 


cs 


SA 


DA 


PQ 


HE 


946 


956 


960 


9768 


986 


996 


1666 


1616 


1626 


1636 
1946 


1656 
1668 


1676 


1686 


OVE." 
PRINT"{5 UP}":GOSUB 207 
G:PRINT"{4 DOWN}":FOR Y 
=1 70 5 
PRINTTAB (9) "{P}{LEFT}"; 
:GET ZS:IF Z2S=""THEN 95 
6 
IF Z$=CHR$(20)AND LEN(Z 
$(¥))<1OR CCS=CHRS (34)T 
HEN 958 
IF Z$=CHR$(20)THEN Z$(Y 
) =LEFTS$ (2S (Y) , LEN (Z$ (Y) 
)-1):GOTO 1036 
IF Z$=CHR$(13)AND Z$(Y) 
=""THEN PRINT B$(X,¥):P 
RINT:GOTO 1050 
IFZ$=CHR$(13)THEN Z$(Y) 
=Z$ (Y)+SPS$:2$ (Y) =LEFTS ( 
Z$(¥),24):GOTO 1646 
IF ASC(Z$)<32 OR ASC(Z 
$)>96 AND ASC(Z$)<191 
{SPACE}THEN 950 
IF LEN(Z$(¥))>23 THEN 
{SPACE}956 
Z$(Y)=Z$(Y)+Z$ 
PRINT Z$;:GOTO 950 
BS (X,¥)=Z$(¥):2$(y)="" 
:PRINT" ":PRINT 
NEXT: PRINTTAB (12) "PRES 
S ANY KEY" 
WAIT 198,15:GET M$:RET 
URN 
PRINT" {CLR}{3 DOWN}ENT 
ER FILENAME FOR SAVE. 
{SPACE}USE NAME OF THE 
PRIMARY INDIV. (16 "; 
PRINT"SPACE/LETTER LIM 
IT.) ":PRINT"PRESS RETU 
RN TO CANCEL THIS OPTI 
ON. {DOWN}" 
INPUT SFS:IF SFS=""THE 
N RETURN 
IF LEN(SF$)>16 THEN 16 
76 
PRINTTAB(10)"{3 DOWN}S 
AVING: "SFS$:CRS=CHRS (T 
3) 
OPEN 15,8,15 
OPEN 2,8,2,"@0:"+SFS+" 
7S,W":GOSUB 1396 
PRINT#2,HES;CRS;HD$;CR 
$;GS;CRS;GRS;CRS;PS:PR 
INT#2,2;CRS;A 
FOR X=1 TO 2:FOR Y=1 T 
05 
IF BS(X,Y)=""THEN BS (X 
7Y¥) =SPS 
PRINT#2,CHRS (34) ;BS$(X, 
Y) 
NEXT Y:NEXT X 
GOSUB 1396 
CLOSE 2:CLOSE 15 
PRINTTAB(12)"{3 DOWN}S 
AVE COMPLETED":FOR G=1 
TO 2600:NEXT: RETURN 
IF K=0 THEN 1270 
PRINT" {CLR} "TAB (3) " 
{3 DOWN}A FILE ALREADY 


AF 


EQ 


HM 
XB 


ER 


1248 


1256 


1266 
1276 


1286 


1296 
1366 


1316 
1326 


1336 


1346 


1358 
1366 


1376 
1386 
1396 
1466 


1416 
1426 


1436 
1446 


1456 
1466 


1476 
1486 


1496 


1568 
15108 


1526 
1536 


1546 


EXISTS IN MEMORY" 
PRINTTAB (9) "{DOWN}OVER 
WRITE IT?{2 SPACES}Y/N 
" 


GET M$:IF M$="N"THEN R 

ETURN 

IF M$<>"Y"THEN 1256 

PRINT" {CLR}{3 DOWN}ENT 

ER FILENAME TO BE LOAD 

ED. USE FILES 

{2 SPACES}WITH PRIMARY 
INDIV."; 

PRINT" NAMES ONLY.":PR 
INT"PRESS RETURN TO CA 

NCEL THIS OPTION.":PRI 

NT 

LFS="":INPUT LFS$:IF LF 
$=""THEN RETURN 
PRINTTAB(69)"{3 DOWN}L 

OADING: "LFS 

OPEN 15,8,15 

OPEN 2,8,2,"6:"+LFS+", 
$,R" 

INPUT #2,HES,HD$,GS$,GR$ 
,PS$: INPUT #2,Z,A:GOSUB 
{SPACE}1398 

FOR X=1 TO Z:FOR Y=1 T 

05 

INPUT #2,B$ (X,Y) 

NEXT Y:NEXT X:GOSUB 13 
90 

CLOSE 2:CLOSE 15 
PRINTTAB(9)"{3 DOWN}LO 
AD COMPLETE":FOR G=1 T 

O 2000:NEXT:K=1:RETURN 
INPUT#15,EN,EM$,ET,ES 
IFEN>1THEN PRINT EN,EM 
$,ET,ES:STOP 

RETURN 

PRINT" {CLR}{DOWN} PRES 
S RETURN TO END LISTIN 

G PRIOR TO{3 SPACES}CO 

MPLETION. {DOWN}" 

OPEN 1,8,0,"$":GET#1,A 

AS, AAS 

GET#1,AAS$,AAS:IF AAS=" 
"THEN 1508 

GET#1,BB$,CC$ 

BL=ASC (BB$+CHR$ (@) ) :BH 

=ASC (CCS$+CHRS (8) ) 

DDS=MIDS (STR$ (BL+256*B 

H) , 2) +CHRS (32) 
PRINTTAB (6)DDS$; :GET#1, 

DD$:IF DDS$<>""THEN 148 
g 

PRINT:GET EES:IF EE$<> 

CHRS (13) THEN1440 

CLOSE 1 
PRINTTAB(12)"{2 DOWN}P 

RESS ANY KEY" 

WAIT 198,15:GET M$:RET 

URN 

K$=B$ (1,1) :H$=B$ (2,1): 

J$=B$(3,1) | 

PRINT CHR$(14)"{CLR} 
{3 DOWN}"TAB (7) "CHOOSE 
PRIMARY INDIVIDUAL":P 

RINTTAB(6)"{DOWN}A = " 


XD 


RQ 


CA 


MK 


1556 


1568 


1576 


1586 


1596 
1668 
1616 
1626 
1636 
1635 
1646 
1658 
1668 
1676 


1686 
1698 


1766 
1716 


1726 
1736 
1748 
1756 
1766 
1776 


1788 


1796 


1866 
1816 


1828 
18390 
1848 


1856 


KS 

PRINTTAB(6)"B = "H$:PR 
INTTAB(6)"C = "JS 
PRINT"{6 DOWN} NOTE: Y¥ 
OU HAVE ENTERED"Z"RECO 
RDS.":PRINT" A COMPLET 
ELY "; 

PRINT"FILLED-IN PRINTO 
UT NEEDS:": PRINTTAB (10 
)"{DOWN}FOR A ~ 15 REC 
ORDS" 

PRINTTAB(1@)"FOR B - 2 
3 RECORDS": PRINTTAB (1 
) "FOR C ~ 31 RECORDS": 
NI=@ 

GET N$:IF NS$="A"THEN N 


B" THEN NI=2 

C" THEN NI=3 
THEN 1598 
PRINT" {CLR}{3 DOWN}ENT 
ER A NUMBER & LETTER F 
OR YOUR CHART" 

INPUT" (EXAMPLE ~ 1A)"; 
cs 

IF LEN(C$)<>2THEN 1630 
INPUT"{2 DOWN}ENTER DA 
TE (EXAMPLE 2/22/92) " 
7DS 

PRINT CHR$ (142) "{CLR} 
{2 DOWN}"SPC (12) "TURN 
{SPACE}PRINTER ON" 
PRINTTAB(6)"{2 DOWN}P 
{SPACE}= PRINT"SPC(6)" 
M = MAIN MENU" 

GET M$:IF M$="P"THEN 1 
719 

IF MS<>"M"THEN 1680 
RETURN 

PRINT "{CLR}{3 DOWN}"T 
AB (14) "PRINTING...":RE 
STORE 

IF NI=1 THEN GOTO 1760 
IF NI=2 THEN GOTO 1750 
FOR B=l1 TO 15:READ X:N 
EXT 

FOR B=1 TO 15:READ X:N 
EXT 

OPEN4, 4,7 

DS=D$+"{8 SPACES}":DS= 
LEFT$(D$,8):REM ** 8 S 
PACES 

PPS$=B$(NI,1)+" 

{24 SPACES}":PPS=LEFTS$ 
(PP$,24):REM ** 24 SPA 


VVS="": V=0:VV=6: 


T=1 TO 15:READ X 
IF T=l OR T=15 THEN 
46 

IF T=2 OR T=14 THEN V= 
36 

IF T=3 OR T=13 THEN V= 
36:VS="2"sVV=15 

IF T=4 OR T=12 THEN 
14 

IF T=5 OR T=11 THEN v= 


EJ 
PR 


QK 
BX 


DG 


KD 


GF 


EK 


DX 


BH 


BS 


BB 
DS 


BB 


DR 


GX 


CG 


KD 


JA 


QF 


RD 


MJ 


1860 
1876 


1886 
1898 


1966 


1916 


1926 


19396 


1946 


1956 


1968 


1976 
1986 


1996 


2060 


2619 


2026 


2630 


2046 


2058 


2060 


20676 


14: VS=":":VV$= :Wel 
5:PV=15 

IF T=6 OR T=1@ THEN V= 
14:VS=":":VV=15 

IF T=7 OR T=9 THEN V=1 
4:VS=":"sVV=31 

IF T=8 THEN V=4 

FOR Y=1 TO 4:IF BS$(X,Y 
)=""THEN BS (X,Y) =SPS 
IF Y=l AND T=1 THEN GO 

SUB2160:GOTO1960 

IF Y=1 THEN PRINT#4,"" 
SPC (V) ;V$;""SPC(VV);VV 
$;""SPC (PV) "NAME: 

{2 SPACES}"BS (X,Y) 

IF Y=2 THEN PRINT#4,"" 
SPC (V) ;V$;""SPC (VV) VV 
$;""SPC (PV) "BORN: 

{2 SPACES}"BS$(X,Y) 

IF Y=3 AND T=1 THEN GO 
SUB2110:GOT01966 

IF Y=3 THEN PRINT#4,"" 
SPC(V) ;V$;""SPC (VV) ;VV 
$;""SPC(PV) "WED : 

{2 SPACES}"BS (X,Y 

IF Y=4 THEN PRINT#4,"" 
SPC (V) ;VS;""SPC(VV) 7VV 
$;""SPC (PV) "DIED: 

{2 SPACES}"BS (X,Y) 
NEXTY: VS=""3VVS=""3 VV= 
0: PV=G0:NEXTT 

CLOSE 4 

PRINT" {CLR}{3 DOWN}"TA 
B(12) "PRINTOUT COMPLET 
E":FOR G=l TO 2600:NEX 
T:RETURN 

DATA 8,4,9,2,10,5,11,1 
712,6,13,3,14,7,15 
DATA 16,8,17,4,18,9,19 
72,28,10,21,5,22,11,23 
DATA 24,12,25,6,26,13, 
27,3,28,14,29,7,30,15, 
31 
PRINT" {CLR} {CYN}"TAB (8 
)"****{2 SPACES}ENTRY 
{2 SPACES }MODE 

{2 SPACES}****" 
PRINT"{2 SPACES}PRESS 
{SPACE}RETURN ON A BLA 
NK NAME LINE TO 

{2 SPACES}SKIP TO THE 
{SPACE}NEXT RECORD. "; 
PRINT" PRESS RETURN 

{2 SPACES}ON ANY OTHER 
BLANK LINE TO LEAVE T 
HAT{3 SPACES}LINE"; 
PRINT" BLANK. 

{2 SPACES}PRESS 7 ON A 
BLANK NAME{4 SPACES}L 
INE TO TERMINATE THE " 


i 
PRINT"ENTRY MODE. 

{2 SPACES}MAKE CURRENT 
~LINE CORRECTIONS WITH 
INST/DEL." 

PRINT" {WHT} {6 DOWN}NAM 
E{3 SPACES}: {DOWN}"DT 
$:PRINT"BORN{3 SPACES} 


JANUARY 1993 COMPUTE G-27 


PROGRAMS 


ES SS EA ET FES ES STIS IE 


: {DOWN} "DTS: PRINT" WED 
{4 SPACES}: {DOWN}"DT$S 
PRINT"DIED{3 SPACES}: 
{SPACE} {DOWN}"DTS: PRIN 
T'SPOUSE : {DOWN}"DTS: 
PRINT" {HOME}{8 DOWN}": 
RETURN 
FOR F=1 TO 5:B$(Z,F)=S 
P$:NEXT:Y=5: RETURN 
PRINT#4,""SPC (4) "ANCES 
TORS OF "PPS""SPC(5) "N 
AME: {2 SPACES}"BS (X,Y) 
:RETURN 
PRINT#4,""SPC(4) "CHART 
"CS""SPC(5) "PRINTED " 
DS$""SPC(13)"WED : 
{2 SPACES}"BS (X,Y) 
RETURN 
PRINT"{CLR}{5 DOWN} "TA 
B(6)"QUIT - ARE YOU SU 
RE?{2 SPACES}¥/N" 


DG 2689 


CF 2099 


FE 2166 


Gc 2116 


EF 2126 
QA 2136 


MF 2146 GET MS:IF MS="N"THEN R 
ETURN 

DQ 2150 IF MS<>"Y"THEN 2146 

BQ 2168 SYS 64738 


Robert Nellist is a retired Sears service- 
man who enjoys using graphic fonts 
with his word processor. He lives in 
Brockport, NY. 


CALCULEASE 


By Farid Ahmad 

Calculus is an important branch of math- 
ematical science that deals with bodies 
in motion. An intermediate-to-advanced 
study of many subjects requires a work- 
ing knowledge of calculus. Calculus itself 
can be divided into two main parts: inte- 
gration and differentiation. Calculease 
will help students by quickly calculating 
the definite integral of any valid function. 


Typing It In 

Calculease is written entirely in BASIC. 
To help avoid typing errors, enter the 
program with The Automatic Proofread- 
er; see “Typing Aids” elsewhere in 
this section. Be sure to save a copy of 
the program to disk before you exit 
Proofreader. 

Calculease is a snap to use, provid- 
ing you have a working knowledge of 
integral calculus. When you first run Cal- 
culease, there is a brief delay as 
some machine language routines are 
poked into place. You are then present- 
ed with a control screen that contains 
all the default parameters. _ 

You can change any of these para- 
meters by pressing the first letter of 


G-28 COMPUTE JANUARY 1993 


each option. When everything is to 
your liking, press Return, and the result 
will be displayed. Special graphics 
make the display similar to what you 
see in mathematical texts. 

Here is a rundown of all the options 
and what they represent. 


Screen Blank 

If you turn this option on (by pressing 
S), the screen will blank out while cal- 
culations are being made. This 
speeds up the computer slightly. 


Integration Rule 

Calculease uses a numerical method 
to solve integration problems. Briefly, 
this involves dividing the required inter- 
val into many small parts, evaluating 
the average value of the function in 
each part, and then adding all the val- 
ues to get the final result. 

Various rules are available to divide 
the given interval and to add up the re- 
sulting parts. Calculease can use four 
of these: Weddle, % Simpson, 
Simpson, and Trapezium. These meth- 
ods are listed in decreasing order of ac- 
curacy. The more accurate methods 
give different weight to each division, 
and so calculations are rather involved. 
Since we're using a computer, the dif- 
ficulty of a calculation is not a problem, 
and the most accurate method (Wed- 
dle) should be used. The other three 
methods will be of interest to students 
of calculus who want to determine the 
relative accuracy of the methods. 


Number of Divisions 

The greater the number of divisions in- 
to which the interval is divided, the 
greater the accuracy—but the longer it 
takes to calculate the result. A maxi- 
mum of 500 divisions is possible. Note 
that each rule places a different restric- 
tion on the number of divisions. With Tra- 
pezium, any number of divisions can 
be used; Simpson requires an even 
number of divisions. The number of di- 
visions must be an even multiple of 3 
with ¥% Simpson, and it must be an 
even multiple of 6 with Weddle. 

If you choose an incorrect number 
of divisions, the number is rounded off 
to an acceptable value. Also note that 
as you change the integration rule (by 
pressing |) the number of divisions will 
change accordingly. 


Upper Limit 

This is the upper limit of the interval. It 
can be any valid number. You can al- 
so use the constant zor its multiples, 
but remember to indicate the proper 
mathematical operations. For example, 
itis conventional to write 2x when you 
want to indicate multiplication. In Cal- 
culease, however, you must enter 2°, 
or the results will be unpredictable. 


Lower Limit 

This is the lower limit of the interval, It 
is specified in the same manner as the 
upper limit. Obviously, the lower limit 
must not exceed the upper limit. If this 
happens, the program issues a warn- 
ing when you try to evaluate the inte- 
gral by pressing Return. 


Function 

This is the relationship between the 
two variables x and y. This means that 
the function must follow the same 
rules of mathematical precedence and 
syntax as normal BASIC expressions. 
If any errors occur, they are indicated. 

To check for such errors, the upper 
limit is placed in the function, and the 
function is then evaluated. In some cas- 
es the function may not be defined at 
the upper limit, and you will get an er- 
ror message. For example, if the upper 
limit is 2/2 and you try to enter the func- 
tion y=tan(x), you will get a division-by- 
zero error, as tan(x) is undefined in the 
expression x=7/2. 

There is one potential error that will 
not be detected. Since BASIC expres- 
sions can include variables, these are 
not flagged as errors. To Calculease, 
however, only the variable x is valid. Us- 
ing any other variables will produce un- 
predictable results. For example, 
y=x+z will be accepted, but it will pro- 
duce an incorrect result. In short, be 
careful not to include any variable 
names by mistake. If you use the con- 
stant mas part of the expression, follow 
the rule mentioned above. 

When you have adjusted all parame- 
ters as required, press Return to eval- 
uate the integral. A timer will appear at 
the bottom of the screen to let you 
know how much of the calculation has 
been completed. The timer’s initial val- 
ue depends on the number of divi- 
sions. The speed at which it counts 
down depends upon the complexity of 


the function 

After the result is displayed, you're re- 
turned to the control screen. All set- 
tings are retained, and you can 
change the parameters selectively to 
watch the effect of each on the final re- 
sult. You might want to change the num- 
ber of divisions or the integration rule 
to see how it affects the accuracy of 
the result. 


CALCULEASE 
FF 5 REM COPYRIGHT 1993 COMPUT 
E PUBLICATIONS INTL LTD ~ 
ALL RIGHTS RESERVED 


PD 16 GoTO8G 
BJ 26 FORI=GTON 
BJ 38 SY¥SQQ,U1,U2:PRINTN-I;:PR 
INT"{LEFT} " 
GA 48 X=L+I*H 
MX 56 ¥(I)=VAL (RES) 
GJ 66 NEXT 
QD 70 RETURN 
RD 80 POKE56,48:CLR:RES="":1=G 
:N=0:X=6:L=6:H=0:DIMY (5G 
6) :QQ=828:U1=23:U2=25 
AP 99 S1=0:S2=6:S3=9 
KQ 166 FOR R= @ TO 35:READ A:P 
OKE QQ+R,A:NEXT:REM REL 
OCATABLE ML FOR CRSR LO 
CATING 
EF 110 DATA{2 SPACES}632,253,1 
74,032,158,183,134,002, 
632,253,174,032,158,183 
1 138,168,166 
XX 126 DATA{2 SPACES}@62,224,6 
25,176,033,192,040,176, 
629, 624,032,248,255,096 
7 162,014,676 
FA 136 DATA{2 SPACES}139,227 
GJ 146 GOSUB1250:REM{4 SPACES} 
TITLE 
DA 158 GOSUB1520:REM{4 SPACES} 
SETUP SMARTVAL 
RB 160 GOSUB1960:REM{4 SPACES} 
CHARCTER DEFINE 
XM 176 GOSUB137G:REM{4 SPACES} 
INITIALIZE 
BG 186 GOSUB2116:REM{4 SPACES} 
SETTINGS 
CE 196 IFSB=1 THEN POKE53265,P 
EEK (53265) AND239: POKE53 
280,1:REM BLANK SCREEN 
AH 200 GOSUB480:REM{5 SPACES}A 
DJUST INTERVEL 
RA 210 GOSUB2@:REM{6 SPACES}PR 
E CALCULATE 
CQ 220 SYSQQ,23,25:PRINT"WAIT. 
" 
MM 230 ON RULE GOSUB610,670,74 
6,820:REM CALCULATIONS 
BB 240 IFSB=l THEN POKE53265,P 
EEK (53265) OR16:POKE532 
86,0 
HH 258 GOSUB9@G:REM{5 SPACES}O 
UTPUT 


260 
276 
286 
298 
366 
319 
320 
336 
346 
356 
366 
376 
388 
396 
406 
416 
426 
436 
44G 
456 


466 


476 
486 
490 
508 
516 
526 
536 


540 
550 
560 
576 
580 
590 
606 
616 
620 


636 
646 
656 
666 
670 
686 


696 


706 
716 
726 
738 
748 
758 


766 
776 
786 


798 
800 
819 


GOTO18G 


REM-LIMITS ETC. 
PRINT" {CLR}" 
INPUT"LOWER LIMIT";L$ 
L=VAL (L$) 

GOSUB1146: IFEITHEN319 
RETURN 


PRINT" {CLR}" 
INPUT"UPPER LIMIT";US 
U=VAL (US$) 

GOSUB114@: IFEITHEN380 
RETURN 


PRINT" {CLR}{2 DOWN}(1 T 
0 508) 

INPUT" {HOME}NUMBER OF D 
IVISIONS";N$:N1=VAL (NS 
:IFN1<1{2 SPACES}OR N1> 
500 THEN45G 

N=N1 

N=INT (N/M) *M 
IEFN<MTHENN=M 
H=(U-L) /N: RETURN 


PRINT" {CLR}RELATION BET 
WEEN Y AND X:":PRINT "Y 
INPUT RES 

X=U: CHECK=VAL (RES) 
GOSUB114@: IFEITHEN53@ 
RETURN 


REM-TRAPEZIUM 
SG=Y¥ (8) +¥(N) 
FORI=1TON-1:S1=S1+¥ (I): 
NEXT 

AS=(H/2) * (S@+2*S1) 
RETURN 


REM-SIMPSON 

SG=¥ (G)+¥(N) 
FORI=1TON-~1STEP2:S1=S1+ 
Y¥ (I) :NEXT 
FORI=2TON-2STEP2:S2=S2+ 
Y¥ (I) :NEXT 
AS=(H/3) * (S6+4*S1+2*S2) 
RETURN 


REM-EIGHT SIMPTHENON 
S@=¥ (G)+¥(N) 
FORI=1TON-1:IF3*INT (1/3 
) =ITHENS1=S1+¥ (I) :GOTO7 
76 

$2=S2+¥ (I) 

NEXTI 

AS=( 3*H/8) * (SG+3*S2+2* 
$1) 

RETURN 


REM-WEDDLE 


826 
836 


840 
859 
860 
870 
880 
898 
980 
919 


926 
936 
946 
956 
966 
976 
986 
996 
1666 
1919 
1626 
1636 
1646 
1656 
1666 
1676 
1686 
1996 
1196 
1116 
1126 
1136 
1146 


1156 


1166 


1176 
1186 


1196 
1266 
1219 
1226 
1236 
1246 
1258 


FORI=GTON-~1STEP6 

S=¥ (1)+5*Y (1+1)+¥(I+2)+ 
6*Y (1+3)+¥ (1+4) +5*¥ (1+5 
)+¥ (1+6) :S@=S0+S 

NEXTI 

AS=(3*H/1G) *S@ 

RETURN 


REM-OUTPUT 
PRINT" {CLR}" 
RPS=" "+RES+"{2 SPACES} 
<X"+MSS+MS$ 
RLS=LEFTS (RPS, 36) 
R2$=MIDS (RPS, 37,36) 
R3$=MIDS (RPS, 67,30) 
LL&LEN (L$) :LP=5-LL 
XX=9:YY=1 
SYSQQ,XX- 1,YY 
{3 SPACES}:PRINT"!" 
SYSQQ,XX{3 SPACES},YY 
{3 SPACES}:PRINT"A" 
SYSQQ,XX+ 1,¥Y 
{3 SPACES}:PRINT"A" 
SYSQQ,XX+ 2,YY 
{3 SPACES}:PRINT"{K}" 
SYSQQ,XX- 2,YY+1 :PRIN 
TUS 
SYSQQ,XX+ 3,YY-1 :PRIN 
TLS 
SYSQQ,XX{3 SPACES} ,YY+ 
1 :PRINTRI1S$ 
SYSQQ,XX+1 ,YY+6 :PRIN 
TR2S 
SYSQQ,XX+2 
TR3$ 
ASS="= "+STRS$(AS) :AQ=L 
EN (AS$) :AG=(40-A@) /2 
SYSQQ,15,A@:PRINT ASS 
SYSQQ,23,09:PRINT" 
{RVS}PRESS ANY KEY TO 
{SPACE}GO ON" 
POKE198,6:WAIT198,1:PO 
KE198,@:RETURN 


7YY+6 :PRIN 


REM-CHECK ERROR 
Z=PEEK (781) *2:1FZ=OTHE 
N1186 

EA=PEEK (41766+Z) +PEEK ( 
41767+Z) *256:PRINT" 
{RVS}{2 DOWN}"; 
C=PEEK (EA) : PRINTCHRS (C 
AND127) ; : I1FC<128THENEA 
=EA+1:GOTO1166 

PRINT" ERROR":EI=1:GOS 
UB1080: RETURN 
EI=@:RETURN:REM NO ERR 


PRINT" {CLR}": POKE53281 
7G: POKE53280,@: POKE646 


JANUARY 1993 COMPUTE G-29 


PROGRAMS 


Se ETI ET SE Te PS Fa FS TE 


AF 


XJ 


XD 


G-30 


1266 
1276 


12896 


1296 
1306 
13198 
1326 
1338 
1346 
1358 
1366 
1376 
1380 
1398 
1460 
1410 


1426 
1436 


1446 
1458 


1466 


1476 
1488 
1496 


1500 
1516 
1520 
1536 
1540 


1556 


1566 


1576 


1586 
1596 
1606 
1616 
1626 


1636 


3 
' 
SYSQQ,3,15: PRINT"CALCU 
LEASE 
SYSQQ,4,15:PRINT"== 


SYSQQ,8,1:PRINT"PROGRA 
M TO EVALUATE DEFINITE 

INTEGRALS" 
SYSQQ,10,13:PRINT"BY F 
ARID AHMAD" 
SYSQQ,23,14:PRINT" 
{RVS}PLEASE WAIT" 
RETURN 


REM-INITIALIZE 

SB$ (G8) ="0FF":SB$(1)="0 

N ":SB=0 

RU=4: US="7":U=VAL (US): 

M=6 

eR a 
NS="24":N=VAL (NS) :N1=N 
RES="SIN(X) + COS(X) + 
Kia Sekar 

GOSUB480 

FOR A =1 TO 4:READIAS( 

A) :NEXT 

REM DIMY (500) 

M1$="{WHT}LOWER LIMIT 
{SPACE}IS GREATER THAN 
UPPER LIMIT{CYN}" 

FOR R =1T039:MSS$=MSS+" 
":MUS=MUS+"~"":MLS=ML$ 


REM-POKE SMART VAL 
SA=49152:REM STARTING 
{SPACE}ADDRESS (RELOCA 
TABLE) 

H1=INT ((SA+13) /256) :L1 
= (SA+13) -H1*256 

H2=INT ((SA+15@) /256) :L 
2=(SA+15@) -H2*256:CS=0 
FORAD=SATOSA+2G@6: READM 
L:CS=CS+ML: POKEAD,ML:N 
EXT 
IFCS<>23175THENPRINTCH 
R$(147)"*** ERROR IN D 
ATA STATEMENTS ***" EN 
D 

POKESA+5,L1: POKESA+9,H 
1: POKESA+133,L2:POKESA 
+138,H2:REM RELOCATE M 
L 

SYSSA 

RETURN 
DATA169,076,133,124,16 
9,013,133,125 
DATA169,192,133,126,09 
6,141,255,003 
DATA144,141,252,063,10 
4,141,253,003 
DATAG72,173,252,003,97 


COMPUTE JANUARY 1993 


1646 
1658 


1668 
1678 
1688 
1696 
17668 
1716 
1726 
1736 
1749 
1750 
1768 
1776 
1786 
1796 
1806 
1816 
1829 
1836 
1840 


1856 


1868 
1876 
1886 
1896 
1966 


19108 
1926 


1936 
1940 


1958 
1966 


1976 
1986 


1999 
2660 


2,201,217,208 
DATAG@G7,173,253,003,28 
1,183,246,011 

DATA{2 SPACES}173,255, 
903,201,058,176,003,87 
6 
DATA128,600,996,104,16 
9,226,072,186 
DATA142,254,903,165,11 
3,141,248,003 
DATA165,114,141,249,08 
3,162,079,189 
DATAGGG,002,157,167,00 
3,202,016,247 
DATAG56,165,036,229,12 
2,168,162,023 
DATA201,081,176,673,16 
9,000,141,013 
DATAG@3,153,008,802,13 
6,177,122,153 
DATAGGG,002,136,016,24 
8,169,060,133 
DATA122,169,002,133,12 
3,032,121,165 
DATA173,000,003,141,25 
6,003,173,001 
DATAGG3,141,251,803,16 
9,150,141, 000 
DATAGG3,169,192,141,00 
1,063,032,115 
DATAGGG,032,138,173,16 
2,000,173,250 
DATAG@G3,141,000,003,17 
3,251,003,141 
DATAGG1,093,173,813,00 
3,138,141,013 
DATAGG3, 240, 006,169,00 
6,133,097,133 
DATA1@2,173,248, 063,13 
3,113,173,249 
DATAGG3,133,114,162,07 
9,189,167,603 
DATA157,000,062,202,01 
6,247,169, 000 
DATA133,013,174,254,00 
3,154,096 


REM-NEW CHARACTERS 
C=6: POKE53272, (PEEK (53 
272) AND24G)OR2*C 
$=53248:E=55296:NC=122 
88 
POKE56333,127:POKE1,51 
LG=E-S:EN=L6+NC 
A$=LO/256:A=LG-256*A$: 
B%=(EN~A) /256:B=EN-~256 
*B%-A:C%= (E-A) /256 
C=E~256*C$-A 
POKE781,A$+1:POKE782,A 
: POKE9G ,C: POKE91,C%:PO 
KE88,B: POKE89,B%:SYS41 
964 
POKE1, 55: POKE56333,129 
READA: IFA=~1THEN RETUR 
Nz REM~-~-EXIT 
FORI=0T07:READB 
POKE12288+A*8+I,B 


JG 


DA 


2016 
2628 


2636 
2046 
20598 
2060 
2678 
2689 
2690 
2100 
2110 
21208 
2130 


2146 
2150 


2166 


2176 
2186 


2190 


2206 


2219 
2220 


2230 
2240 
2256 
2266 
2276 


2286 


2296 
2306 
2316 


2326 
233 
2340 
2356 
2360 
2376 
2388 


2396 


.SYSQQ, 


NEXT: GOTO1986 
DATAG33,006,800,014,03 
1,025,024,024,624 
DATAG65, 024,624,024, G2 
4,624,624,024,024 
DATAG94,606,006,254,12 
4,198,116,231,606 
DATAG97,9024,024,624,15 
2,248,112,068,008 
DATAG24,600,006,192,06 
0,024,060,230,008 
DATAG31,006,066,066,G06 
2,102,102,063,900 
DATA-1 


REM-Z 

S@=0:S1=6:S2=9 

PRINT" {CLR}" 

XX=6 
SYSQQ, 98,3: PRINT" {RVS} 
{11 SPACES }CALCULEASE 
{1l SPACES}" 
SYSQQ,XX,3:PRINT"{RVS} 
S{OFF}CREEN BLANK 

{8 SPACES}:" 
SYSQQ,XX+1,@: PRINTMUS 
SYSQQ,XX+2,3:PRINT" 
{RVS} I {OFF}NTEGRATION 
{SPACE}RULE{4 SPACES}: 
" 


SYSQQ,XX+3,3: PRINT" 
{RVS}N{OFF}UMBER OF DI 
VISIONS :" 
SYSQQ,XX+4,3:PRINT" 
{RVS}L{OFF}OWER LIMIT 
{9 SPACES}:" 
XX+4,25: PRINTLS 
SYSQQ,XX+5,3:PRINT" 
{RVS}U{OFF}PPER LIMIT 
{9 SPACES}:" 
SYSQQ,XX+5,25:PRINTUS 
SYSQQ,XX+6,@: PRINTMUS 
SYSQQ,XX+7,3:PRINT" 
{RVS}F{OFF}UNCTION..." 
SYSQQ,XX+9,00: PRINT" Y= 
WSRES 
REM{3 SPACES}SYSQQ,16, 
00: PRINTMUS 
SYSQQ,23,3:PRINT"{RVS} 
PRESS RETURN TO EVALUA 
TE INTEGRAL" 
SYSQQ,XX, 25: PRINTSBS(S 
B) 
SYSQQ,XX+2,25:PRINTIAS 
(RU) 
SYSQQ,XX+3,24:PRINT N; 
"{LEFT} " 
POKE198,@:WAIT198,1 
GET T1$ 
IF T1S$<>"I"THEN238G 
RU=RU+1: IFRU>4THENRU=1 
M=RU:IF M=4THEN M=6 
GOSUB479: GOTO2366 
IFT1$="N"THENGOSUB45@: 
GoTo2l 
IFT1$="F"THENGOSUB536: 
GOTO2129 


PB 2460 IFT1$="L"THENGOSUB316: 
GOTO21290 
IFT1S="U"THENGOSUB380: 
GOTO2128 
IFT1$<>"S"THEN2456 
SB=SB+1: IFSB=2THENSB=9 
GOTO2296 
IFT1$<>CHR§$ (13) THEN232 
i} 


FD 2416 


FP 2420 
JB 2436 
DX 2440 
Qs 2456 


BK 2460 
MK 2476 


IF L =<U THEN2506 
SYSQQ,21,0:PRINT M1$:S 
§8296G2 "9? PRINTMSS: GOS 


SYSQQ,21,0:PRINT MSS 
GOTO2280 
SYSQQ,23,3:PRINT"{RVS} 
{12 SPACES}WORKING... 
{12 SPACES}" 


EE 2480 
CA 2496 
DQ 2508 


SQ 2510 RETURN 
AS 2526: 
ED 2538 DATA "TRAPEZIUM 
{2 SPACES}" 
MF 2548 DATA "SIMPSON 
{4 SPACES}" 
SF 2550 DATA "3/8 SIMPSON" 
EF 2568 DATA "WEDDLE'S 
{3 SPACES}" 
AC 2570 : 


Farid Ahmad is a frequent contributor. 
He lives in Islamabad, Pakistan. 


DIRECTORY AID 


By Ondfej Blazek 

Have you ever wished you could tem- 
porarily remove files from a disk direc- 
tory, but still keep the files on disk? Have 
you ever wished you could protect files 
from being scratched? What about a com- 
mand that would let you temporarily cor- 
rupt a file so that it would become unus- 
able? How about turning unusable splat 
files to usable files with most of the data 
intact? Wouldn't it be nice to be able to 
unscratch scratched files? If you an- 
swered yes to any of these questions, 
then Directory Aid is for you. 


Getting Started 

Directory Aid is written entirely in BA- 
SIC. To help avoid typing errors, enter 
it with The Automatic Proofreader; see 
“Typing Aids” elsewhere in this sec- 
tion. Be sure to save a copy of the pro- 
gram before you exit Proofreader. 


Using the Program 

Load Directory Aid but do not run it. In- 

sert the disk you wish to alter in the 

drive, and then run the program. 
After a moment of disk access, the 

computer will display the names of the 


first eight files on the disk, the location 
of the files, and their current status (hid- 
den, normal, locked, or splat). 

The first filename also appears be- 
low the list in a work box, followed by 
the prompt H/N/L/S. These letters cor- 
respond to the four possible status con- 
ditions of each file. To change a file stat- 
us, press the corresponding key: H for 
hidden, N for normal, L for locked, or S 
for splat. 


Hidden Files 

Hidden files do not appear in a normal 
directory and cannot be accessed un- 
til they are returned to normal status. Be- 
fore you hide a file, note the file type 
(PRG, SEQ, USR, or REL). This informa- 
tion will be needed to return the file to 
normal, 

Warning: If a file is hidden, do not 
save additional files to the disk or use 
the VALIDATE command. Such an ac- 
tion could overwrite any hidden files. Re- 
turn all files to normal with the N option 
before adding files to the disk. 


Normal Files 

The N option returns a hidden, locked, 
or splat file to its original state. Any 
scratched files that are on disk will ap- 
pear as hidden files and can be re- 
trieved using the N option. 


Locked Files 

The L option prevents files from being 
erased with Commodore's SCRATCH 
command. If you later want to erase a 
locked file, use the N option to return 
it to normal status. Then scratch it. A 
locked file appears with a < symbol 
next to its name in the directory. 


Splat Files 
The S option tricks the computer into be- 
lieving that a file has not been closed 
properly. A splat file appears in the 
directory with an asterisk (*) beside its 
name. It will not load or run correctly. 
To reverse the effects of S, use the N 
option, If a true splat file exists due to 
improper file closing, use the N option 
to return the file to a usable format 
with most of its information intact. 
When you first run Directory Aid, 
most files will be listed as normal. If 
you decide not to change a file's stat- 
us, press N to leave it normal and to 
move on to the next file. Press H to 


leave a hidden file unchanged, and so 
on. You can also press a cursor key to 
leave a file unchanged and move on to 
the next. 

After you've had a chance to 
change the status of the first eight 
files (first sector) of the directory, the 
computer writes the changes to disk 
and gets the next eight files from the di- 
rectory. The process continues until 
there are no more files in the directory. 


How It Works 

All the functions of this program are 
based on the first byte of any entry in 
the directory. Byte O of the entry indi- 
cates the file type. Bytes 1 and 2 ofa 
directory entry point to the track and 
sector of the first data block. Bytes 3- 
18 contain the 16 characters that 
make up the filename. If the name con- 
tains fewer than 16 characters, it's pad- 
ded with shifted spaces. 

Bits 0-2 of byte 0 determine wheth- 
er a file is deleted (DEL), sequential 
(SEQ), program (PRG), user (USR), or 
relative (REL). If bit 6 is 0, then the file 
is considered normal. Set it to 1, how- 
ever, and the file becomes locked and 
cannot be deleted. 

By changing the first byte of each en- 
try, you can obtain many variations of 
the file, including normal, splat, and 
locked, When you remove the first char- 
acter and replace it with a 0, the direc- 
tory entry becomes transparent, and 
the file seems to have disappeared. If 
a new directory entry is added to the 
disk while an entry is hidden, however, 
the new entry overwrites the original hid- 
den directory entry. The actual file is 
still on disk, but it cannot be accessed. 

The SCRATCH command works like 
the H option. The file is not actually re- 
moved from the disk; just the directory 
entry is deleted (see above). This ena- 
bles the N option to retrieve a 
scratched file if its original directory en- 
try has not been overwritten. 


DIRECTORY AID 

PK 5 REM COPYRIGHT 1993 ~ COMP 
UTE PUBLICATIONS INTL LTD 
- ALL RIGHTS RESERVED 

MH 10 POKE 53280,6 

QG 26 POKE 53281,0 

XX 36 POKE 646,5 

MK 160 TR=18:SE=1 


KR 114 PRINT" {CLR} {GRN}U****** 
RE KKKEKKKEKEKKKEKEKEEREEE 


JANUARY 1993 COMPUTE G-31 


PROGRAMS 


SS SS ES 1 a 


RG 


SR 


BX 


SH 


ES 


MR 


DK 
QP 


PP 


115 


117 


126 


150 


160 


186 


185 
187 


188 


199 
360 
330 
340 
350 
355 
366 


365 
380 
390 
395 


400 
4190 


415 
420 


425 
427 


436 
44g 


441 


442 


443 
445 


456 
468 


G-32 


RHR ERAT Ms 
i 


PRINT"={RED}{4 SPACES}O 
NDREJ BLAZEK'S DIRECTOR 


Y AID{5 SPACES}{GRN}-"; 
PRINT" JRRRKAKKHKKK KARE RK 


HK KKK KHER ER RRR RRR ERRER 
7 


PRINT" {RED}{2 SPACES}TR 

K{2 SPACES}SEC 

{6 SPACES}FILENAME 

{8 SPACES}STATUS" 
PRINT" {HOME}{15 DOWN} 
{GRN} #ARKAERRAKRR KERR EEK 
RRKKKKKKERKKKEEEKEEEEEN 

PRINT" (GRN] ®*RRRRRR ERE 

HORI KIO KICK RRR RRRR RRR ER 

RRR 

PRINT" {HOME}{19 DOWN} 
{RED}H{GRN}...HIDE FILE 
(NOT IN DIRECTORY) 

PRINT" {RED}L{GRN}...LOC 

K FILE (SCRATCH PROOF) " 

PRINT" {RED}S{GRN}...SPL 

AT{2 SPACES}FILE (UNUSA 

BLE FORMAT)" 

PRINT" {RED}N{GRN}...NOR 

MAL FILE (RETURN TO NOR 

MAL)" 

PRINT" {HOME} {5 DOWN}" 

vs="" 

OPEN 15,8,15 

OPEN 5,8,5,"#" 

PRINT#15,"U1:"5;0;TR;SE 
INPUT#15,E,E$,ET,ES 

BS="":GET#5,XS:IF x$="" 
THEN X$=CHRS (@) 

FORL=1T0255 

GET#5,AS 

IF AS<>""THEN VS=VS+AS 

IF AS=""THEN VS=VS+CHRS 
(6) 

NEXT: NA=G 

FORT=(3-1) TO (255-1)ST 

EP 32 

NA=NA+1 

C (NA) =ASC (MIDS (VS$,T,1)) 
:T (NA) =ASC (MIDS (V$,T+1, 

1)):S(NA)=ASC (MIDS (V$,T 

+2,1)) 

FS (NA) =MIDS$ (V$,T+3,16) 

C(X)=(C(X) AND3) +(C(X) AN 

D4) 

NEXT 

FORT=1 TO 8:IF T(T)=0 A 
ND S(T)=0 THEN 456 
PRINT "{GRN}{2 SPACES}" 
T (T) PRINT" {UP} 

{8 RIGHT}"S(T) 

PRINT" {UP}"TAB(12)" 
{RED} "CHRS (34) ; : POKE646 
,5:PRINTES (T) ; : POKE646, 
2: PRINTCHRS (34) 
PRINT" {UP} "TAB (32); 

GOSUB 1600:PRINT"{GRN}" 

cs 

NEXT: PRINT 

CLOSE 5:CLOSE 15:GOTO 5 
605 


COMPUTE JANUARY 1993 


KG 


1606 
1016 
1626 
1636 
1646 
5065 
5610 


5626 
5025 


5036 
50508 
5055 
5066 
5076 
5080 


5698 
5166 
5167 
5109 


5110 


5120 


5146 


5141 


5158 
5155 
5157 
5166 
5176 
5186 
5196 
5300 
53198 


5326 
5336 


5348 
5568 


IF C(T)=@ THEN CS$="HID 
DEN" : RETURN 

IF C(T)<128 THEN CS="5 
PLAT": RETURN 

IF C(T)<135 THEN CS$="N 

ORMAL": RETURN 

IF C(T)>191 THEN CS$="L 

OCKED": RETURN 

CS$="2?2":RETURN 
PRINT:OPEN 15,8,15 

OPEN 5,8,5,"#" 

FOR A=1 TO 255 

IF A=2 OR (A-2)/32=INT 
((A-2)/32)THEN GOSUB 5 
166:GOTO 5656 

PRINT#5,MIDS$(VS,A,1); 

NEXT 

PRINT#5,X$; 

PRINT#15,"U2:"75;0;TR; 

SE 

CLOSE 5:CLOSE 15 

SE=ASC(MIDS(V$,1,1)):1 

F SE>2@ THEN PRINT" 

{CLR}";:GOTO 5500 

GoTo 110 

X=INT (A/32)+1 

C(X)=(C(X) AND3) +(C(X)A 

ND4) 

IF T(X)=@ AND S(X)=0 T 

HEN AS="H":GOTO 5141 

PRINT" {HOME} {16 DOWN} 
{2 RIGHT} {RED}";CHRS (3 

4)"{16 SPACES}"CHRS (34 

) 

PRINT" {HOME}{16 DOWN} 
{3 RIGHT} {GRN}"FS(X);" 
{5 RIGHT} {GRN} ({RED}H 
{GRN}/{RED}N{GRN}/ 
{RED}L{GRN}/{RED}S 
{GRN}) 2" 

GET AS:IF AS="" THEN 5 
140 

IF T(X)>@ THEN PRINT" 
{UP}{37 SPACES}":PRINT 
URGE 

IF AS="H" THEN QS=CHRS 
(6) 

IF AS<>"H" AND C(X)=6 
{SPACE}THEN GOSUB 5300 
IF AS<>"H" THEN QS=CHR 

$(C(X) +128) 

IF AS="L" THEN C(X) =C( 

X) +192: QS=CHRS (C(X)) 
IF AS="S" THEN C(X) =C( 

X)+32:QS=CHRS (C(X)) 

PRINT#5,QS; 

RETURN 

PRINT"1...SEQ 2...PRG 
{SPACE}3...REL 4...USR 

" 

GET A$:IF VAL(A$)<1l OR 
VAL(A$)>4 THEN 5316 
C(X) =VAL (A$) 

PRINT" {UP}{38 SPACES}" 
:PRINT"{UP}"; 

RETURN 
PRINT"{CLR}";:GOSUB 99 
oo 


HB 5505 IF E THEN PRINT"{CLR}D 
ISK ERROR: "E;E$;T;S:PR 
INT"{2 DOWN}" 
PRINT" {DOWN} {RED} WARNI 
NG:" 
PRINT" {DOWN} {GRN}IF AN 
Y¥ FILES ARE HIDDEN, DO 
{RED}NOT{GRN} USE" 
PRINT"THE DISK {RED}VA 
LIDATE{GRN} COMMAND, O 
R ADD" 
PRINT"ANY OTHER FILES 
{SPACE}TO THE DISK." 
PRINT" {DOWN}TO ADD FIL 
ES TO THIS DISK, UNHID 
5" 
PRINT"ALL FILES BEFORE 
SAVING." 
PRINT"{2 DOWN}?FILES A 
LTERED"; : END 
OPEN 15,8,15:INPUT#15, 
E,E$,T,S:CLOSE 15:RETU 
RN 


BB 5567 


HP 5519 


PJ 5526 


Cs 5536 


JK 5540 


FD 5556 


PK 5566 


JJ 9666 


Ondfej Blazek lives in Kingston, Ontar- 
jo, Canada. 


CATS AND MICE 


By Maurice Yanney 

You're the mouse in this fast-paced one- 
player game for the 64, and you try toma- 
neuver through various mazes to reach a 
number of cheeses. To add a little excite- 
ment to the game, the cheeses can also 
move. To make things more interesting, 
several cats are chasing you. 

The object of this game is quite sim- 
ple: Eat all the cheese while avoiding the 
cats. While the object is simple, accom- 
plishing the task requires skill, patience 
practice, and a little luck. 


Typing It In 

Cats and Mice is written entirely in ma- 
chine language, but it loads and runs 
like a BASIC program. To type it in, 
use MLX, our machine language entry 
program; see “Typing Aids” elsewhere 
in this section. When MLX prompts 
you, respond with the following values. 


Starting address: 0801 
Ending address: 1B33 


Be sure to save a copy of the program 
before exiting MLX. 


Chase the Cheese 

After you load and run Cats and Mice, 
press the space bar or the joystick fire 
button to start the game. The object of 


this game is to move your mouse 
around each maze eating the cheese 
and avoiding the cats. 

To move, use the joystick in either 
port, or use the I, J, K, and M keys to 
move up, left, right, and down respec- 
tively. (I highly recommend using a joy- 
stick to play this game.) 

When the mouse bites a piece of 
cheese, the cheese shrinks and 
moves to a new location. To finish off 
a piece of cheese, the mouse must hit 
it five times. When all three pieces of 
cheese are eaten, the mouse moves 
on to the next level. Every time you com- 
plete two levels, you're presented with 
anew maze. 

As you move the mouse about the 
maze, you'll notice that the pursuing 
cats have a speed advantage. You 
can make the mouse move faster by 
pressing the joystick button or the 
space bar. This can help you out of 
some tight spots, but use the added 
speed sparingly, as it's used up very 
quickly. The bottom of the screen 
shows the amount of speed remaining. 
When your energy is depleted, press- 
ing the joystick button or the space bar 
will not increase the speed of the 
mouse. 


Scoring 

If one of the four cats touches the 
mouse, that mouse drops from the 
screen. You begin with five mice and 
are awarded a new mouse for every 
5000 points. You earn 100 points 
each time the mouse eats a part of a 
piece of cheese. You earn 1000 
points for completing a level. Bonus 
points are also given at the end of 
each level for any unused speed that 
may remain. 

To pause the game, hold down the 
Shift key or press the Shift Lock key. 
To continue playing, release the Shift 
key or press the Shift Lock key again. 


CATS AND MICE 


0801:0B GB GA GG 9E 26 32 36 A4 
6869:36 32 G8 GB GB AD 8G 8D FS 
@811:91 @2 85 A2 AQ Gl 8D 6D 1F 
@819:1B A9 BF AG 18 20 1E AB 4C 
@821:A9 GE 8D 26 D@ AY BG 8D F7 
@829:21 D® 29 AG GC 26 3D GB D2 
9831:20 EB GA 20 8B G9 AY BB 63 
G839:8D 15 D@ A9 FF 8D 1B D@ 47 
@841:A9 F2 85 FD A9 17 85 FE 27 
@849:26 1B 17 4C E7 68 AS C5 48 


G851:C9 
@859:7F 
@861:D8 
@869:AD 
@871:8D 
6879:2G 
9881:14 
6889:69 
@891:14 
G899:20 
@8A1:9A 
@8A9:8D 
$8B1:93 
68B9:63 
@8C1:6D 
@8C9:26 
@8D1:20 
@8D9:1B 
@8E1:01 
G8E9:C9 
G8F1:00 
@8F9:99 
G961:14 
6969:0E 
G911:03 
6919:20 
9921:C9 
G929:18 
G931:FO 
G939:4C 
6941:1B 
G949:6B 
G951:E8 
6959:CB 
6961:69 
9969:8D 
6971:B9 
G979:36 
6981:17 
@989:F5 
G991:38 
6999:D0 
G9A1:06 
@9A9:88 
G9B1:D6 
@9B9:07 
@9C1:07 
@9C9:8D 
@9D1:66 
@9D9:1B 
@9E1:1B 
G9E9:1B 
@9F1:1B 
G9F9:A9 
GAG1:A9 
GAG9:42 
@A11:E9 
GA19:6A 
GA21:26 
GA29:BG 
GA31:C9 
GA39:248 
GA41:16 
GA49:G5 
GA51:68 


B 
A 


GA71:3. 
GA79:8D 


AD 
@1 
GA 
16 
co 
69 
AD 
26 
GE 
63 
GA 
61 
AC 
AD 
68 
3A 
DE 
1B 
69 
26 
ag 
De 
De 
20 
6D 
B5 
AD 
gl 
co 
4F 
B9 
19 
G2 
AD 
Da 
FF 
co 
AG 
c8 
Ag 
99 
88 
EE 
66 
8D 
ag 
2D 
07 
44 
43 
45 
48 
6c 
De 
1B 
1B 
96 
co 
48 
16 
26 
Bo 
26 
8D 
99 
BS 
ag 
8D 
1B 
6D 


AG 


pc 
cg 
F3 
OF 
De 
26 
1B 
16 
8F 
06 
1E 
ol 
1B 
1B 
De 
De 
AE 
A2 
AS 
14 
AG 
26 
20 
15 
Da 
AS 
Dc 
29 
FO 
AD 
06 
co 
oo 
1B 
ag 
AG 
c8 
BY 
36 
99 
36 
FE 
oo 
co 
07 
8D 
AQ 
2E 
8D 
8D 
8D 
8D 
8B 
36 
a4 
38 
38 
BO 
cg 
48 
16 
26 
16 
1B 
DD 
rt) 
8D 
1B 
16 
Ag 


cg 
FF 
69 
AD 
G6 
F7 
FO 
26 
GA 
26 
De 
De 
De 
18 
63 
G6 
3A 
cg 
A2 
Ag 
28 
F7 
7E 
29 
06 
A2 
29 
16 
63 
3D 
AE 
07 
c8 
18 
Ci) 
6 
co 
BD 
DO 
3F 
88 
26 
15 
06 
i) 
FE 
c3 
De 
46 
47 
49 
4A 
69 
16 
8D 
38 
E9 
06 
04 
OA 
4c 
E9 
AQ 
8D 
6B 
say 
36 
8D 
De 
F4 


11 
cs 
31 
CE 
F7 
57 
8c 
oF 
c4 
F8 
FS 
13 
43 
31 
FO 
1D 
B6 
1E 
14 
B9 
BD 
DA 
46 
39 
94 
69 
6A 
3A 
33 
SA 
18 
49 
c8 
66 
A7 
A6 
AG 
D2 
38 
76 
cg 
71 
3A 
32 
54 
B7 
3F 
B9 
8E 
Ag 
DE 
3c 
19 
61 
8E 
83 
2B 
6 
7B 
04 
F2 
75 
D7 
8F 
21 
cD 
46 
18 
EE 
89 


@A81:8D 
@A89:A9 
@A91:AG 
@A99:B9 
@AA1:AD 
GAA9:1B 
GAB1:08 
GAB9:8E 
@AC1:1B 
@AC9:1B 
@AD1:46 
@AD9:DF 
GAE1:33 
@AE9:DG 
GAF1:63 
GAF9:FF 
@BO1:8F 
@BG9:99 
@B11:FF 
@B19:A9 
@B21:FA 
0B29:GF 
@B31:D0 
0B39:8D 
@B41:99 
9B49:09 
@B51:8D 
@B59:8C 
@B61:290 
@B69:8D 
@B71:8C 
0B79:1B 
0B81:D0 
@B89:57 
@B91:88 
@B99:3E 
@BA1:6D 
@BA9: OB 
GBB1:60 
@BB9:A9 
@BC1:3F 
@BC9:DD 
@BD1:61 
@BD9:1B 
@BE1:3E 
@BE9:DB 
@BF1:8D 
@BF9:1B 
GCG1:DB 
6C69:G1 
@C11:8D 
6C19:66 
@C21:22 
0C29:668 
@C31:FO 
@C39:BC 
9C41:29 
6C49:8D 
@C51:AD 
@C59:8D 
0C61:66 
GC69:29 
@C71:17 
@C79:98 


GCA9:18 


3B 1B A9 
@5 8D 39 
60 BE 41 
43 1B AA 
41 1B 26 
AC 46 1B 
DG DF 68 
41 1B 8C 
AA B9 4C 
26 DB GA 
1B E8 C8 
68 GA 8D 
1B 9D 60 
66 AG 3F 
99 7F 63 
2F 88 DO 
18 99 46 
cB 63 99 
D@ EC AQ 
@C 8D 28 
67 AD OL 
8D FB 07 
A9 CG 8D 
2B DO 66 
BF @2 88 
AQ @B 8D 
27 DB 66 
3E 1B 20 
D2 14 26 
57 1B 66 
3E 1B A9 
C8 8C 3F 
@B 29 DD 
1B AQ 61 
8C 3F 1B 
1B 88 8C 
DG GE 26 
AS 66 8D 
AC 3E 1B 
06 68 AC 
1B 29 76 
@B AS 62 
68 AC 3F 
AS 66 60 
1B AC 3F 
GA AE 34 
58 1B 8D 
F@ 18 AD 
@5 AQ 61 
Dc 29 16 
69 1B AS 
26 55 OB 
D@ 86 26 
c9 24 DG 
56 68 C9 
OB FG 4C 
OF C9 OF 
@D DC Ad 
@1 DC 29 
@D DC BA 
26 BC 6B 
@2 DB 86 
66 8A 29 
@B FO BC 
55 
De 
De 
De 
OB 
20 1E AB 


JANUARY 1993 COMPUTE 


1B 
61 
1B 
Ag 
41 
co 
1) 
4B 
41 
AC 
De 
AE 
gl 
3F 
99 
B9 
93 
co 
07 
8D 
Ag 
2A 
OF 
oo 
6F 
G1 
c8 
gC 
G1 
88 
3F 
@D 
8D 
1B 
AC 
76 
DD 
ol 
1B 
8c 
20 
ag 
3F 
AE 
26 
Ur) 
51 
16 
AD 
61 
De 
cg 
66 
@B 
26 
DC 
7F 
pc 
81 
De 
8A 
FG 
26 
68 
66 
OB 
6B 
6B 
AG 
28 


FA 
99 
82 
27 
E7 
EC 
6A 
BE 
22 
EC 
9c 
Dg 
2F 
46 
79 
22 
9E 
Ag 
2D 
12 
18 
c8 
71 
SA 
FE 
co 
75 
10 
30 
A2 
75 
1c 
37 
A6 
63 
7E 
F2 
a4 
AC 
7F 
2B 
96 
5E 
18 
67 
37 
85 
8D 
FD 
ED 
78 
53 
74 
26 
78 
EB 
8D 
B4 
A6 
8C 
28 
F6 
AG 
67 
5B 
9B 
CF 
cé 
5B 
8D 


G-33 


— nN 


PROGRAMS 


a AES PD IE SS FFE ec 


@CB1:99 
GCB9: 67 
@CC1:04 
@CC9:19 
@CD1:99 
GCD9:87 
@CE1:A9 
GCE9:AG 
GO@CF1:AG 
OCF9:DG 
GDG1:0A 
@DG9:AB 
@D11:E5 
@D19:A2 
@D21:A9 
@D29:14 
@D31:DA 
0D39:1B 
@D41:26 
@D49:55 
@D51:A9 
@D59:4C 
6D61:55 
0D69:88 
@D71:3E 
6D79:20 
GD81:66 
6D89:G1 
@D91:29 
@D99:56 
@DA1:1B 
@DA9:1E 
GDB1:20 
GDB9: 66 
@DC1:E9 
G@DC9: 60 
@DD1L:AE 
@DD9:G1 
@DE1:1B 
GDE9:BD 
@DF1:1B 
ODF9:1B 
GEG1:38 
GEG9:AC 
GE11:41 
GE19:9D 
GE21:99 
@E29:44 
GE31:9D 
GE39:58 
GE41:98 
@E49:8D 
GE51:0E 
GE59:58 
GE61:26 
GE69:41 
GE71:41 
GE79:18 
GE81:A2 
GE89:20 
GE91:1B 
GE99:60 
@EA1:8C 
@EA9:BD 
GEB1:20 
GEB9:1B 
GEC1:66 
GEC9:1B 
GED1:01 
GED9:A9 


99 
F4 
a4 
88 
99 
E2 
FB 
FB 
FB 
18 
93 
AG 
AG 
22 
18 
18 
20 
Ag 
68 
06 
FB 
66 
AG 
4c 
14 
26 
14 
3E 
G3 
64 
15 
91 
26 
1B 
67 
14 
BD 
1B 
1B 
18 
AC 
41 
9D 
99 
44 
AQ 
66 
58 
26 
41 
41 
18 
1B 
E9 
A8 
43 
43 
4c 
41 
AE 
c8 
A2 
8A 
FO 
AE 
cs 
8D 
1B 
20 
59 


97 
AG 
99 
5 
18 
Ag 
A2 
AG 
20 
AO 
AG 
21 
18 
18 
26 
20 
1E 
Ci) 
20 
EO 
26 
20 
co 
65 
15 
64 
26 
1B 
ag 
14 
BD 
14 
91 
BD 
De 
26 
43 
Ag 
66 
69 
46 
1B 
43 
5B 
1B 
04 
AE 
1B 
OF 
1B 
1B 
69 
BD 
61 
AD 
1B 
1B 
5E 
1B 
41 
ce 
08 
38 
06 
41 
co 
59 
BO 
52 
1B 


99 
99 
04 
BO 
99 
85 
Ag 
91 
14 
18 
20 
26 
1E 
GA 
AB 
ES 
AD 
D3 
15 
FO 
14 
15 
FO 
60 
3F 
FO 
14 
E9 
66 
BD 
1B 
Ol 
FO 
1B 
AQ 
14 
18 
AC 
41 
9D 
99 
43 
ag 
66 
E9 
46 
1B 
E9 
A8 
44 
44 
4c 
1B 
43 
1B 
66 
58 
AG 
46 
AC 
DG 
41 
68 
41 
AC 
DG 
8D 
1B 
Da 
SA 


G-34 COMPUTE JANUARY 1993 


GEE1:AC 49 1B B9 5B 1B C9 62 4G 
GEE9:FG 10 26 76 GE D@ BB AD G5 
GEF1:59 1B 69 62 8D 59 1B 20 EA 
GEF9:Cl 14 AC 40 1B B9 5B 1B 27 
GFG1:C9 G8 FG 16 26 25 GE DG AT 
GFG9:6B AD 59 1B 69 64 8D 59 Cl 
OF11:1B 26 Cl 14 AC 40 1B B9 94 
GF19:5B 1B C9 64 FO 16 26 43 70 
OF21:G6E 


GF39:C9 Gl DG 64 26 FB GD 66 42 
GF41:C9 G2 DG G4 26 D1 OD 6G El 


@F99:60 20 97 EG AS 8F 29 GF BD 
GFA1:FO 3B AE 41 1B BD 43 1B 62 
GFA9:ED 3E 1B C9 68 90 31 AD EG 
GFB1:3E 1B FD 43 1B C9 68 90 4A 
GFB9:27 BD 43 1B CD 3E 1B FG 83 
GFCl:1F AD 3F 1B FD 44 1B C9 75 
GFC9:69 99 3B BD 44 1B CD 3F 3D 
OFD1:1B FO 33 BD 44 1B ED 3F AS 
GFD9:1B C9 68 96 29 AD BB 6B 52 
OFE1:BD 44 1B CD 3F 1B BO OF @7 
GFE9:AD 59 1B 29 G8 C9 68 DB 73 
@FF1:EC 26 E6 6D AY Gl 66 AD FB 
GFF9:59 1B 29 @4 C9 64 DO DD CE 
1061:20 16 GE AO G1 60 BD 43 D9 
1069:1B CD 3E 1B BO GF AD 59 1A 
1611:1B 29 62 C9 62 D@ C6 20 £6 
1019:Dl @D A9 61 60 AD 59 1B 32 
1021:29 G1 C9 61 DG B7 20 FB @1 
1429:9D A9 Ol 66 AD 6A 1B 29 D6 
1631:62 C9 62 DG G7 A2 BB 26 F4 
1639:6C 12 DG 33 AD 6A 1B 29 D7 
1041:64 C9 G4 DO G7 A2 G2 26 4A 
1649:6C 12 D@ 23 AD 6A 1B 29 £6 
1651:68 C9 G8 DB G7 A2 G4 20 EG 
1659:6C 12 DG 13 AD 6A 1B 29 F5 
1961:18 C9 186 DG G7 A2 G6 26 FO 
1669:6C 12 DG G3 4C D4 16 26 84 
1071:AG 16 AC 39 1B DG G1 60 GF 
1079:AD 3E 1B 8D 52 1B AD 3F D5 
1681:1B 8D 69 1B AD 38 1B 38 2E 
1689:E9 61 C9 GA 96 G6 38 EO AF 
1091:0A 4C 8B 16 C9 G2 BO G6 FO 
1099:29 BD 16 4C CG 16 C9 G4 9E 
1GA1:B@ 66 26 D1 16 4C CO 10 34 
1GA9:C9 66 BG G6 26 EG 16 4c A3 
10B1:C@ 18 C9 68 BO G6 26 F4 C2 
16B9:16 4C CG 16 26 63 17 26 6c 
16C1:AA 12 206 4B 14 26 53 GA 46 
16C9:A9 6G 85 A2 A5 A2 C9 4B 3G 
10D1:96 FA 68 AD 6A 1B 29 29 12 
19D9:C9 20 D@ 1B A2 G8 26 6C 94 
1@E1:12 F@ 14 AC 66 1B 88 8C D1 
10E9:66 1B A2 @@ AY 40 85 FD AF 
10F1:A9 30 85 FE 28 CC 1l AD 97 
16F9:6A 1B 29 48 C9 46 DG 1B 4B 
1161:A2 GA 26 6C 12 FG 14 AC EA 
1169:67 1B 88 8C 67 1B A2 62 6E 


1111:A9 
1119:20 
1121:c9 
1129:12 
1131:68 
1139:A9 
1141:26 
1149:20 
1151:A9 
1159:16 
1161:66 
1169:6A 
1171:18 
1179:8D 
1181:A9 
1189:26 
1191:18 
1199:1B 
11A1:1B 
11A9:E5 
11B1:CD 
11B9:2E 
11C1:A2 
11C9:F3 
11D1:1B 
11D9:15 
11E1:1B 
11E9:41 
11F1:9D 
11F9:GA 
1261:A2 
1269:12 
1211:65 
1219:AG 
1221:41 
1229:52 
1231:B9 
1239:AD 
1241:13 
1249:DE 
1251:61 
1259:62 
1261:63 
1269:AA 
1271:1B 
1279:3E 
1281:B0 
1289:CD 
1291:38 


FE 
80 
6c 
8c 
FD 
66 
18 
De 
AG 
Ag 
A2 
Ag 
E8 
1B 
ll 
2D 
64 
65 
OA 
26 
20 
85 
26 
46 
D3 
33 
AE 
66 
B5 
69 
1D 
AG 
6c 
8E 
8E 
1B 
AB 
DE 
DG 
co 
co 
co 
26 
58 
AD 
1B 
17 
1B 
GE 


12E9:1B 
12F1:3F 
12F9:4C 
1301:1B 
1309:AG 
1311:FA 


8c 
14 
3E 
AQ 
DG 
29 


1339:AD 


DG 


1341:06 
1349:44 
1351:59 
1359:20 
1361:1B 
1369:E6 
1371:00 
1379:66 
1381:FD 
1389:27 
1391:61 
1399:AG 
13A1:A9 
13A9: 66 
13B1:14 
13B9:F2 
13C1:68 
13€9:D4 
13D1:29 
13D9:0F 
13E1:61 
13E9:69 
13F1:D4 
13F9:C8 
1401:D4 
1469:8D 
1411:3F 
1419:04 
1421:F6 
14293608 
1431:01 
1439:69 
1441:D4 
1449:14 
1451:D3 
1459:69 
1461:85 
1469:26 
1471:26 
1479:26 
1481:FG 
1489:D9 
1491:A0 
1499:AG 
14A1:AG6 
14A93AE 
14BL:FO 
14B9:D6 
14C1:AE 
14C9:AD 
14D1:66 
14D9:69 
14E1:FD 
14E9:A9 
14F1:A9 
14F9:85 
1501:40 
1569:68 
1511:3D 
1519:4A 
1521:4A 
1529:1B 
1531:AE 
wos Onto. 
1541:41 
1549:D4 
1551:85 
1559:FO 
1561:FB 
1569:4C 


20 
1B 
1B 
16 
29 
@D 
88 
AG 
88 
88 
91 
2A 
07 
AG 
Ag 
60 
26 
26 
03 
8D 
D4 
8D 
Ag 
8D 
ag 
G6 
1B 
D4 
8D 
8D 
D4 
8D 
Ag 
60 
CA 
28 
FC 
Da 
De 
De 
08 
63 
08 
Ol 


7 


41 
08 
03 
5A 
63 
AD 
66 
88 
D2 
65 
A2 
36 
AD 
1B 
8D 
4m 
AC 
53 
6G 
8D 
Ag 
FB 
1l 
AS 
57 


1571:1B 
1579:18 
1581:68 
1589:35 
1591:35 
1599:ED 
15A1:ED 
15A9:C8 
15B1:35 
15B9:35 
15C1:ED 
15C9:ED 
15D1:C8 
15D9:1B 
15E1:1B 
15E9:AD 
15P1:1B 
15F9:26 
1661:1B 
1669:1B 
1611:37 
1619:96 
1621:8D 
1629:8D 
1631:38 
1639:AG 
1641:AE 
1649:51 
1651:8C 
1659:64 
1661:16 
1669: 42 
1671:66 
1679: 26 
1681:39 
1689:G6A 
1691:CD 
1699:05 
16A1:16 
16A9:@7 
16B1:66 
16B9:FE 
16C1:98 
16C9:FD 
16D1:26 
16D9:A9 
16E1:52 
16E9:A9 
16F1:26 
16F9:BE 
1761:1B 
1769:57 
1711:82 
1719:1B 
1721: 46 
1729:1B 
1731:Bl 
1739:8D 
1741:56 
1749:26 
1751: 68 
1759:8D 
1761:A9 
1769: 4F 
1771:61 
1779:@2 
1781:1B 
1789:8D 
1791:98 
1799:98 


De 
9c 
16 
46 
65 
38 
64 
Bl 
FS 
2c 
55 
64 
cl 
33 
4B 
4D 
92 
08 
cD 
74 
AF 
7E 
43 
22 
AA 
BE 
6D 
E2 
DG 
cé 
9B 
AS 
FS 
75 
c7 
1A 
BC 
A7 
De 
c7 
97 
64 
6B 
AG 
42 
BD 
B7 
96 
33 
46 
9A 
AB 
SF 
72 
EA 
E9 
1c 
FC 
BB 
96 
66 
12 
E8 
76 
F2 
92 
8D 
FD 
Dl 
94 


17A1:F8 
17A9:FF 
17B1:61 
17B9:48 
17¢1:68 
1709:17 
17D1: 60 
17D9:FF 
17E1:FF 
17E9: 60 
17F1:AG 
17F9:61 
1801:06 
1809:61 
1811:66 
1819: 66 
1821:66 
1829:008 
1831:00 
1839:60 
1841:61 
1849:00 
1851:00 
1859:06 
1861:61 
1869:69 
1871:66 
1879:61 
1881:60 
1889:60 
1891:1C 
1899:66 
18A1:36 
18A9:C8 
18B1:C3 
18B9:61 
18C1:93 
18C9:9D 
18D1:11 
18D9:60 
18E1:53 
18E9:9D 
18F1:36 
18F9:9D 
1901:3A 
1999:92 
1911:20 
1919:4F 
1921:0F 
1929:07 
1931:13 
1939:20 
1941:106 
1949:14 
1951:13 
1959:14 
1961:2E 
1969:08 
1971:61 
1979: 00 
1981:61 
1989:80 
1991:00 
1999:00 
19A1:00 
19A9:61 
19B1:06 
19B9:61 
19C1:60 
19C9:62 


oo 
ol 


JANUARY 1993 COMPUTE 


FF 
g1 
48 
Go 
15 
9G 
FF 
BE 
C1) 
74 
62 
OA 
99 
16 
17 
17 
17 
o7 
07 
GE 
14 
14 
62 
a4 
99 
69 
16 
17 
18 
ao 
Ct) 
cB 
38 
Ct) 
c2 
ao 
53 
4E 
49 
4c 
3A 
39 
11 
49 
45 
26 
4c 
26 
12 
16 
61 
OF 
26 
GA 
20 
2E 
11 
1B 
11 
17 
OB 
11 
@B 
11 
17 
11 
1B 
11 
G1 
G1 


FF 
FF 
96 
14 
96 
BE 
67 
80 
99 
E7 
93 
63 
os 
@5 
6S 
65 
@s 
ol 
@5 
@2 
63 
63 
@5 
G2 
@5 
o5 
63 
@5 
G2 
7E 
gc 
13 
18 
6c 
43 
9A 
ll 
11 
45 
CT) 
9D 
36 
9D 
45 
44 
46 
42 
14 
26 
oS 
oS 
20 
g9 
19 
15 
2E 
OB 
07 
07 
64 
G3 
93 
G3 
G3 
04 
97 
07 
OB 
9B 
63 


G-35 


PROGRAMS 


TS a SL I ES LS SES Be TTS EERE AOE BOE aS 


19D1:06 G1 67 OB 62 G1 G7 GF GA 
19D9:96 61 OB G3 66 G1 OB GB 36 
19E1:62 01 OB GF 66 G1 GF G3 FC 
19E9:66 G1 GF OB G2 G1 GF GF 33 
19F1:066 G1 13 G3 66 61 13 OB SF 
19F9:62 G1 13 OF 66 G1 17 G3 26 
1AG1:66 61 17 GB 62 61 17 GF 5D 
1A69:66 61 1B 63 66 61 1B OB 89 
1A11:02 61 1B GF 66 G1 GO G3 12 
1A19:93 6B 686 11 63 OB 66 G3 ED 
1A21:06 G5 86 BB G6 G3 BG 11 97 
1A29:06 63 66 17 66 G5 G6 67 DD 
1A31:67 64 61 67 BD G4 G1 GB FF 
1A39:99 66 G1 13 69 66 G1 17 3E 
1A41:67 64 G1 17 BD 64 Gl 63 O69 
1A49:09 66 G1 OF 69 66 G1 1B 12 
1A51:09 66 G1 63 11 G5 GG OB 83 
1A59:11 63 66 11 11 63 66 17 93 
1A61:11 G5 6G 63 14 OB BG 11 6D 
1A69:14 6B 66 OG G7 G3 G3 BG B4 
1A71:15 63 63 66 G3 63 B8 Gl 86 
1A79:GD G3 68 61 11 63 G8 Gl AB 
1A81:1B 63 68 G1 G7 66 G3 BO 6B 
1A89:15 66 83 86 67 B7 GA G1 93 
1A91:69 67 BA 61 15 B7 BA Bl 37 
1A99:17 67 GA 61 63 BD GB G1 C9 
1AA1:0D OD 68 G1 11 GBD G8 G1 7E 
1AA9:1B GD 68 G1 G7 11 G3 OG 42 
1AB1:15 11 63 66 67 14 63 G6 A3 
1AB9:15 14 63 66 66 13 G1 G3 2F 
1AC1:61 17 63 64 61 1B 63 07 5E 
1AC9:61 G3 63 69 66 GF G3 63 75 
1AD1:01 63 64 62 61 GB G6 O5 2D 
1AD9:49 13 G6 03 61 G7 G6 G2 F5 
1AE1:01 63 68 65 60 GF 69 G5 FB 
1AE9:00 17 G9 63 61 OB G9 G2 7D 
1AF1:01 63 OB 69 66 G3 BC 63 86 
1AF9:61 13 6C 65 66 1B GC 64 CD 
1B61:00 OF BC 62 G1 G7 GE G9 E5 
1B99:00 67 GF G3 61 17 GF G5 9A 
1B11:06 13 OF G2 G1 63 11 G4 48 
1B19:01 6B 11 69 66 GB 12 G3 98 
1B21:01 17 12 62 61 67 14 G3 4F 
1B29:01 OF 14 69 6G 1B 12 G3 4A 
1B31:61 66 GB 64 66 BB GB BB E7 


Maurice Yanney, the author of Balloon 
Pop (August 1992), lives in Lebanon, 
Pennsylvania, 


FASTBALL 


By Daniel Lightner 
When you fill a disk with programs, it can 
be difficult to remember what each pro- 
gram does. Filenames are not always 
helpful in determining what a program 
does. Games and utilities can be mixed 
in with productivity programs and pro- 
gramming aids. Fastball helps you to or- 
ganize a disk by placing related pro- 
grams into categories, but that’s not all. 
It's also amenu-driven utility that makes 
loading and running programs a snap. 
With Fastball, you can designate up to 
nine categories on a disk and assign pro- 


G-36 COMPUTE JANUARY 1993 


grams on that disk to those categories. 
You can designate whatever categories 
best suit your needs. 

Not only does Fastball let you separate 
your disk programs into ‘different cate- 
gories, it also stores information about the 
way the programs load and execute. If a 
program needs a certain SYS address to 
run, Fastball stores that information for 
you and uses it when needed. 


Typing It In 

Fastball is written in machine language 
and must be entered using MLX, our 
machine language entry program; see 
“Typing Aids” elsewhere in this sec- 
tion. When MLX prompts, respond 
with the following values, 


Starting address: 0801 
Ending address: 1598 


Be sure to save a copy of Fastball be- 
fore exiting MLX. 


Running the Program 

Fastball can be loaded and run like 
any BASIC program. When it's activat- 
ed, amenu of nine options appears on 
the screen. Just follow the prompts. 


Categories 

When you first run the program, you 
won't have any categories established. 
Insert a disk that contains a number of 
programs that you wish to categorize. 
You can check the disk's directory 
names by selecting option 8. Directory 
listings can be stopped and restarted 
by pressing any key. 

Viewing the programs on disk will 
give you some idea of what category 
names you'll need. When you have de- 
cided upon a category, select option 3 
to add the category to your list. If for 
any reason you have picked an option 
that you wish to cancel, just hit the Re- 
turn key. 

After you've entered one or more cat- 
egories, you can start entering pro- 
gram names. Use option 2 from the 
menu. You'll be prompted for the cate- 
gory you wish to use and then for the 
program's name. 


Other Options 

Next, you must indicate whether the pro- 
gram executes from a RUN command 
or a SYS command. Select RUN if 


that's all your program requires. If it re- 
quires a SYS command, you'll need to 
know the address that follows the SYS. 
If you're entering a boot program that 
loads and executes another program, 
you'll need to choose the SYS option 
and enter any five-digit number. 

Option 1 allows you to see the pro- 
gram names and how they're arranged 
under the different categories. Options 
4 and 5 make it simple to delete pro- 
grams and categories. If a category is 
deleted, the program names under 
that category will be deleted as well. 

After you've finished entering informa- 
tion, you can save the file using option 
6. If you want to add or edit programs 
or categories later, you can edit at any 
time by using option 7. 


Using Fastball 
When you're ready to exit Fastball, 
just choose option 9. Fastball will save 
your custom menu to the disk with a 
shifted Q character. (Think of this as 
the fastball shape on your keyboard.) 
This will be a stand-alone menu pro- 
gram that you can put on any disk. Fast- 
ball itself need not be on your disk. 
When you're ready to use a disk, 
you can quickly load the new menu by 
typing LOAD and then holding down 
the Shift key while typing the quote-Q- 
quote sequence. When the menu ap- 
pears, you'll be presented with a list of 
your categories. By typing the number 
that corresponds to the category, you 
can view all of the programs listed un- 
der that category. Type the letter that 
corresponds to a desired program, 
and that program will load and run. 


FASTBALL 


G861:1E 08 GA 66 9E 32 38 38 BY 
G869:38 286 68 GB GB BB BG BB 3D 
@811:08 66 G6 GG GB GB GB BB 21 
9819:06 86 G6 BG GB BG BB GG 29 
G821:08 GB GG BB GB BG BB 26 51 
@829:CC FF A9 34 8D 14 63 AO 84 
9831:Cl 8D 18 63 A9 94 8D BG 14 
9839:62 A9 15 8D Bl 62 AO BG 19 
0841:8D 26 DG 8D 21 DB AG BG AG 
0849:B9 DE 16 26 D2 FF C8 C@ DA 
@851:F7 D@ F5 A9 Fl 85 FB AQ 32 
9859:04 85 FC 26 E4 FF C9 G8 29 
0861:F@ F9 C9 31 98 F5 C9 3A DE 
0869:BG Fl 48 38 E9 34 AA CA OB 
0871:EG OG FO 69 26 GF BA 28 12 
6879:0F GA 4C 76 68 AG BB Bl 98 
9881:FB 18 69 88 91 FB C8 C@ 99 
9889:15 DG F4 68 C9 31 FO 35 AT 


G891:C9 
@899:C9 
@8A1:C9 
@8A9:C9 
@8B1:AG 
G8B9:30 
@8C1:56 
@8C9:C9 
@8D1:F5 
@8D9:4C 
G8E1:99 
G8E9:GE 
@8F1:GE 
G8F9:20 
6961:05 
G969:A9 
@911:FF 
@919:DC 
0921:28 
G@929:FF 
G931:FC 
9939:FE 
0941:6A 
6949:FD 
@951:C9 
@959:FE 
@961:AD 
0969:20 
0971:C9 
O9793E7 
G981:62 
G989:83 
@991:14 
9999:C9 
@9A1:65 
G9A9:A9 
@9B1:FF 
@9B9:DC 
G9C1:26 
g9c9:11 
G9D1:A9 
G9D9:FD 
G9E1:FD 
G@9E9:G9 
G9F1:4C 
G9F9:A9 
GAG1:18 
GAG9:FE 
GA11:FB 
GA19:00 
GA21:01 
GA29:FC 
@A31:AD 
GA39:C4 
GA41:26 
@A49:6B 
@AS51:A9 
@A59:C9 
GA61:62 
GA69:BB 
GOA71:FG 
GA79:AG 
GA81:85 
GA89:1E 
@A91:1D 
GA99:8F 
@GAA1:C9 
GAA9: 2A 
@GAB1:CE 
GAB9:EE 


32 
34 
37 
38 
1c 
20 
6B 
Go 
OA 
47 
26 
4c 
(ek) 
83 
A2 
G2 
28 
@2 
cé6 
AQ 
ag 
Ag 
20 
cg 
49 
co 
CF 
E4 
40 
OA 
26 
GE 
co 
oo 
A2 
68 
26 
G2 
cg 
85 
08 
26 
cD 
AS 
D8 
68 
A5 
69 
69 
85 
85 
60 
DA 
OF 
c4 
cg 
41 
41 
26 
OF 
G6 
60 
FE 
20 
GA 
FO 
wS 
91 
DA 
Ag 


@AC1:25 
GAC9:GA 
@AD1:1D 
@AD9:20 
GAE1:61 
GAE9:GA 
@AF1:8D 
GAF9:G0 
@BG1:FO 
GB69: 26 
@B11:6D 
@B19:A7 
@B21:AE 
@B29:14 
@B31:20 
@B39:0F 
@B41:@D 
GB49:GF 
@B51:00 
@B59:C9 
@B61:1E 
GB69: 20 
@B71:FG 
@B79:A9 
@B81:26 
@B89:55 
@B91:GE 
@B99:88 
@BA1: 03 
OBAI: 08 
OBB1:33 
GBB9: G2 
@BC1:6F 
@BC9:34 
@BD1:FB 
@BD9:69 
@BE1:FB 
@BE9:D7 
@BF1:AG 
@BF9:AD 
@CG1:91 
GCG9:AG 
gCl1:14 
6C19:76 
@C21:A9 
@C29:26 
0C31:69 
GC39:D2 
@C41:FB 
@C49:C8 
@C51:8E 
@C59:C8 
@C61:98 
@C69:66 
6cC71:6C 
GC79:6G 
@C81:41 
@C89:C4 
GC91:62 
9C99:C9 
G@CA1:8¢6 
@CA9:18 
GCB1:08 
@CB9:AA 
GCC1: OF 
@CC9:D2 
@CD1:D2 
@CD9:89 
GCE1:D6 
GCE9:FF 


BO 
86 
OA 
BC 
c7 
Bo 
26 
AQ 
6D 
oo 
31 
38 
62 
1c 
c4 
26 
78 
26 
6c 
26 
OF 
a9 
@2 
@2 
AD 
DF 
18 
69 
26 
31 
E9 
FD 
91 
18 
85 
AD 
32 
62 
62 
B6 
GA 
GE 
A7 
6B 
@2 
a7 
FF 
OF 
a7 
AE 
DA 
2A 
FB 
c4 
4c 
26 
8D 
Bl 
A8 
c8 
cs 
FB 
8B 
FO 
AD 
@2 
OF 
D2 
EQ 
AD 


@DG1:G0C 4C A4 BC AG BB AS FB D5 
6D69:85 FD A5 FC 85 FE 20 1D 6F 
@D11:0A Bl FB C9 88 B® 86 26 AB 


CAQO0NFAPARYD 
> 
fo) 
N 
bod 
2 
o 
> 
a 
el 
aQ 
a 
i~} 
wo 
= 
i) 
"y 


6D69:G1 8D AA @2 4C 7D BC 28 6D 
@D71:09 16 26 9B GE CE 34 83 E8 
@D79:AD 34 63 C9 G5 DB FG AG 62 
GD81:00 B9 35 G3 A2 GG DD 26 D7 
D89:16 FO G8 E8 EG GA DO F6 3F 


GDA1:AG 66 BY 35 G3 DI 36 18 86 
@DA9:BG G3 4C C4 GD DI 38 16 F2 
@DB1:F@ 93 4C BE BD C8 CG G5 8C 
GDB9:FG G3 4C A3 BD AY Gl 8D 6F 
GDC1:D9 62 68 EA A9 BG 8D D7 44 
@DC9:62 8D D8 G2 AG BO AE 34 1A 
@DD1:63 CA BD 35 106 8D DA @2 99 
@DD9:BD 3A 16 8D DB 62 BI 35 CB 
GDE1:63 8C DC 62 38 E9 30 AB CE 
@DE9:18 CO GG F@ 17.18 AD D7 9B 
@DF1:62 6D DA G2 8D D7 62 AD 61 
GDF9:D8 G2 6D DB G2 8D D8 G2 66 
GEG1:88 4C E9 BD AC DC G2 CA 2A 
@EG9:C8 CC 34 63 DG C4 66 26 ED 
9E11:BB GF AE DA 14 E@ 69 FB 79 
GE19:24 EG G6 FO G7 26 OF GA 6F 
@E21:CA 4C 1A GE 26 FB OF 28 69 
GE29:9B GE CE 34 G3 AD BO BY 68 
GE31:35 63 91 FB C8 CC 34 63 7F 
@E39:D6 F5 EE DA 14 4C 47 68 2F 
@E41:A9 GG 8D DC G2 AS BA 28 ED 
GE49:B4 FF AQ 6F 85 B9 26 96 D5 
GE51:FF 26 C4 GF 26 C9 OF AG ES 
GE59:00 26 D2 FF 99 DD 62 C8 E8 
@E61:26 A5 FF C9 GD DG F2 26 45 
GE69:D2 FF 26 AB FF AD DE @2 24 
GE71:C9 36 DG GB AD DF G2 C9 D3 
GE79:38 DG G1 6G AY B61 8D DC 51 
GE81:62 66 AG GB 2G C4 BF BY BE 
GE89:3F 16 20 D2 FF C8 CO 33 52 
GE91:D@ FS 26 E4 FF C9 GG FG FD 


GEB1:C9 14 FO 34 C9 BD FB 1C 99 
GEB9:C9 20 98 ED C9 22 FO E9 56 


GEE1:03 99 35 63 EE 34 G3 68 6B 
GEE9:AC 34 63 CB G1 BO G3 4C F2 


GF19:C@ FP AOS GF 20 C3 FF 4C 1A 


JANUARY 1993 COMPUTE  G-37 


PROGRAMS 


SS 


@F21:CC 
GF29:DG 
OF31:FF 
@F39:BD 
@F41:26 
GF49:26 
GF51:AG 
GF59:A5 
OF61:FF 
GF69:CG 
GF71:26 
GF79:0F 
GF81:FF 
GF89:FG 
@F91:C9 
GF99:C4 
@FA1:C6 
OFA9: 8F 
GFB1:Bl 
@FB9:1D 
@FC1:85 
@FC9:A9 
GFD1:AG 
@FD9:C8 
OFE1:B9 
OFE9:13 
OFF1:19 
GFF9:F5 
1661:D2 
1669:AG 
19611:C8 
1619:2c 
1621:57 
1629333 
1631:35 
1639:16 
1641:4C 
1049:52 
1651: 4B 
1059:56 
1661:2A 
1669:59 
1071:@D 
1079: 41 
1681:3F 
1089: 4F 
1691:58 
10699:@D 
10A1:4E 
10A9:53 
16B1:4F 
106B9:41 
16C1:26 
1609349 
19D1:52 
16D9:55 
16E1:26 
10E9:4C 
16F1:49 
10F9:56 
1161:31 
1169:58 
1111:42 
1119:4E 
1121:4C 
1129:26 
1131:52 
1139:6D 
1141:53 
1149:41 


FE. 
8D 
AQ 
Ey 
BA 
C6 
6G 
CB 
8D 
62 
E4 
26 
4c 
04 
49 
OF 
FF 
85 
FB 
GA 
FC 
26 
C4) 
co 
AB 
Dg 
26 
66 
a 
oo 
ca 
58 
53 
34 
35 
oo 
41 
45 
20 
45 
26 
26 
20 
54 
@D 
45 
45 
6D 
@D 
26 
46 
4D 
43 
45 
26 
4D 
46 
26 
SA 
59 
39 
55 
4c 
53 
54 
52 
45 
@D 
54 
4D 


G-38 COMPUTE JANUARY 1993 


1151:41 
1159:4F 
1161:2E 
1169:43 
1171:6D 
1179:45 
1181:4F 


44 
47 
26 
41 
26 
54 
47 


11A1:53 
11A9:45 
11B1:41 
11B9:26 


41 
@D 
44 
38 


11E1:06 
11E9:96 


86 
Us) 


1249:FB 
1251:Cc8 


CrPQQAanndnanwoao 


12B1:8D 
12B9:0B 
12C1:A9 
12C9:FB 
12D1:F6 
12D9:F9 
12E1:FB 
12E9:FC 
12F1:62 
12F9:D2 
1361:D2 
1369:EE 
1311:A9 
1319:80 
1321:42 


a 


PNORPRQWHONN 


cg 
4c 
A7 
Bl 
65 
85 
53 
6B 
B9 
GA 
FO 
90 
EQ 
AA 
85 
6D 
cD 
50 
c8 
85 
4c 
co 
FF 
FE 
Ag 
28 
Bo 
99 
D2 
cD 
Bl 
66 
FB 
c8 
9D 
FB 
AC 
4c 
26 


1381:F5 20 £4 FF C9 60 FG F9 71 
1389:C9 2A FO 15 C9 41 98 Fl F4 
1391:CD A9 62 B@ EC 8D AB @2 4B 
1399:A9 61 8D AA G2 4C EG G8 3C 
13A1:60 4C 2B 68 AG GG BO 8D F6 
13A9:6A 99 77 62 C8 CO G6 DG 7G 
13B1:F5 A9 G6 85 C6 AY 93 26 7A 
13B9:D2 FF A9 GD 20 D2 FF 20 BB 
13C1:D2 FF 26 D2 FF 20 D2 FF A8 
13C9:A@ 6G AD BD 26 D2 FF BO 4C 
13D1:93 GA 26 D2 FF C8 CO @5 1F 
13D9:D@ F5 AG GB EE 34 63 BY G2 
13E1:35 63 26 D2 FF C8 CC 34 85 
13E9:63 D@ F4 AQ 22 26 D2 FF 36 
13F1:A9 2C 26 D2 FF AQ 38 28 60 
13F9:D2 FF A9 2C 26 D2 FF AD 7B 
1461:A7 62 C9 G1 DB 26 AD 38 69 
1499:286 D2 FF A9 GD 26 D2 FF 1F 
1411:20 D2 FF 26 D2 FF 26 D2 Ag 
1419:FF 20 D2 FF A@ 6G BO 98 B4 
1421:0A 20 D2 FF C8 C@ 63 DO DG 
1429:F5 4C 87 GA AO 31 26 D2 16 
1431:FF A9 BD 26 D2 FF 26 D2 11 
1439:FF 20 D2 FF 20 D2 FF 20 30 
1441:D2 FF A9 53 20 D2 FF AQ 33 
1449:59 20 D2 FF A9 53 26 D2 2E 
1451:FF AD AD 62 AE AC 62 20 97 
1459:CD BD A9 13 26 D2 FF 66 EA 
1461:4E 45 57 @D OD GD 4c 4F 42 
1469:41 44 22 52 55 4E 6D 1D C7 
1471:1D 51 26 28 51 55 49 54 49 
1479:93 @D 26 46 41 53 54 42 59 
1481:41 4C 4C @D 20 43 4F 59 B4 
1489:59 52 49 47 48 54 26 31 95 
1491:39 39 33 206 43 4F 4D 50 4F 
1499:55 54 45 6D 20 58 55 42 2A 
14A1:4C 49 43 41 54 49 4F 4E 73 
14A9:53 20 49 4E 54 4C 26 4C Fl 
14B1:54 44 @D 26 41 4C 4C 26 AC 
14B9:52 49 47 48 54 53 20 52 4D 
14C1:45 53 45 52 56 45 44 @D 8C 
14C9:6D 1D 1D 48 49 54 26 2A ED 
14D1:20 54 4F 20 41 42 4F 52 OF 
14D9:54 66 2A 2A 2A 2A 2A 2A 8C 
14E1:2A 2A 2A 2A 2A 2A 2A 2A GA 
14E9:2A 2A 2A 2A 2A 2A 2A 2A 12 
14F1:2A 2A 2A 2A 2A 2A 2A 2A 1A 
14F9:2A 2A 2A 2A 2A 2A 2A 2A 22 
1561:2A 2A 2A 2A 2A 2A 2A 2A 2B 
1599:2A 2A 2A 2A 2A 2A 2A 2A 33 
1511:2A 2A 2A 2A 2A 2A 2A 2A 3B 
1519:2A 2A 2A 2A 2A 2A 2A 2A 43 
1521:2A 2A 2A 2A 2A 2A 2A 2A 4B 
1529:2A 2A 2A 2A 2A 2A 2A 2A 53 
1531:2A 2A 2A 2A 2A 2A 2A 2A 5B 
1539:2A 2A 2A 2A 2A 2A 2A 2A 63 
1541:2A 2A 2A 2A 2A 2A 2A 2A 6B 
1549:2A 2A 2A 2A 2A 2A 2A 2A 73 
1551:2A 2A 2A 2A 2A 2A 2A 2A 7B 
1559:2A 2A 2A 2A 2A 2A 2A 2A 83 
1561:2A 2A 2A 2A 2A 2A 2A 2A 8B 
1569:2A 2A 2A 2A 2A 2A 2A 2A 93 
1571:2A 2A 2A 2A 2A 2A 2A 2A 9B 
1579:2A 2A 2A 2A 2A 2A 2A 2A A3 
1581:2A 2A 2A 2A 2A 2A 2A 2A AB 
1589:2A 2A 2A 2A 2A 2A GG 6G 35 
1591:66 GG GG GB GB BG GB BG BB 


Daniel Lightner is a frequent contribu- 
tor. He lives in Sidney, Montana. GO 


THE AUTOMATIC PROOFREADER 


Philip 1. Nelson 


The Automatic Proofreader helps you 
type in program listings for the 128 and 
64 and prevents nearly every kind of 
typing mistake. 

Type in Proofreader exactly as list- 
ed. Because the program can't check 
itself, be sure to enter each line care- 
fully to avoid typographical errors or oth- 
er mistakes. Don't omit any lines, even 
if they contain unusual commanas. Af- 
ter you've finished, save a copy of the 
program before running it. 

Next, type RUN and press Return. Af- 
ter the program displays the message 
Proofreader Active, you're ready to 
type in a BASIC program. 

Every time you finish typing a line 
and press Return, Proofreader displays 
a two-letter checksum in the upper left 
corner of the screen. Compare this re- 
sult with the two-letter checksum print- 
ed to the left of the line in the program 
listing. If the letters match, the line prob- 
ably was typed correctly. If not, check 
for your mistake and correct the line. Al- 
so, be sure not to skip any lines. 

Proofreader ignores spaces not en- 
closed in quotation marks, so you can 
omit or add spaces between keywords 
and still see a matching checksum. 
Spaces inside quotes are almost al- 
ways significant, so the program pays 
attention to them. 

Proofreader does not accept key- 
word abbreviations (for example, ? in- 
stead of PRINT). If you use abbrevi- 
ations, you can still check the line by 
listing it, moving the cursor back to the 
line, and pressing Return. 

If you're using Proofreader on the 
128, do not perform any GRAPHIC com- 
mands while Proofreader is active. 
When you perform a command like 
GRAPHIC 1, the computer moves eve- 
rything at the start of BASIC program 
space—including the Proofreader—to 
another memory area, causing Proof- 
reader to crash. The same thing hap- 
pens if you run any program with a 
GRAPHIC command while Proofreader 
is in memory. 

Though Proofreader doesn’t interfere 
with other BASIC operations, it’s a 
good idea to disable it before running 
another program. To disable it, turn the 
computer off and then on. A gentler 
method is to SYS to the computer's 
built-in reset routine (65341 for the 128, 
64738 for the 64). 


AUTOMATIC PROOFREADER 


@ CLR 

1@ VE=PEEK (772) +256*PEEK (773): 
LO=43:HI=44: PRINT" {CLR} 
{WHT }AUTOMATIC PROOFREADER 
{SPACE}FOR "; 

26 IF VE=42364 THEN PRINT "64" 

30 IF VE=17165 THEN LO=45:HI=4 
6:WAIT CLR:PRINT"128" 

4@ SA=(PEEK (LO) +256*PEEK (HI) ) + 
6:FOR J=SA TO SA+166:READ B 
:POKE J,B:CH=CH+B:NEXT 

56 IF CH<>26570 THEN PRINT "*E 
RROR* CHECK TYPING IN DATA 
{SPACE}STATEMENTS” :END 

66 FOR J=1 TO 5:READ RF,LF,HF: 
RS=SA+RF :HB=INT (RS/256) : LB= 
RS~(256*HB) 

76 CH=CH+RF+LF+HF:POKE SA+LF,L 
B:POKE SA+HF,HB:NEXT 

86 IF CH<>22054 THEN PRINT "*E 
RROR* RELOAD PROGRAM AND CH 
ECK FINAL LINE":END 

96 IF VE=17165 THEN POKE SA+14 

,22:POKE SA+18,23:POKESA+29 

, 224: POKESA+139,224 

POKE SA+149,PEEK(772) :POKE 

SA+15@,PEEK(773) : PRINT" 
{CLR}PROOFREADER ACTIVE" 
SYS SA:POKE HI,PEEK(HI)+1: 
POKE (PEEK (LO) +256*PEEK (HI 
))-1,8:NEW 

DATA126,169,73,141,4,3,169 

73,141,5,3,88,96,165,28,13 
3,167 

DATA165,21,133,168,169,9,1 

41,9,255,162,31,181,199,15 
7,227 

DATA3,262,16,248,169,19,32 
1216,255,169,18,32,216,255 

7160 

DATAG,132,186,132,176,136, 

230,180,200,185,6,2,246,46 

7261 

DATA34,268,8,72,165,176,73 

7255,133,176,194,72,261,32 

7268 

DATA7,165,176,298,3,104,29 

8,226,104,166,186,24,165,1 
67 
DATA121,6,2,133,167,165,16 
8,165,9,133,168,292,208,23 
9,246 
DATA262,165,167,69,168,72, 
41,15,168,185,211,3,32,218 
7255 

DATA1@4,74,74,74,74,168,18 

5,211,3,32,210,255,162,31, 

189 

DATA227,3,149,199,262,16,2 

48,169,146,32,216,255,76,8 

6,137 

DATA65,66,67,68,69,78,71,7 

2,74,75,77,86,81,82,83,88 

DATA 13,2,7,167,31,32,151, 

116,117,151,128,129,167,13 

6,137 og 


106 


116 


126 


136 


146 


156 


166 


176 


186 


196 


200 


216 


226 
236 


ONLY 
ON 
DISK 


Here are the bonus programs that you'll 
find on this month's Gazette Disk. 


Totalizer 
By Randy Clemmons 
San Diego, CA 


Totalizer is a handy two-field database 
that lets you enter a descriptive name in 
one field and a number in the other. 
These could be inventory items and pric- 
es, names and grades, checkbook en- 
tries and amounts—anything you like, 
up to 500 items. 

With Totalizer you can sort items, add 
amounts, compute averages, keep run- 
ning totals, compute taxes on totals, 
and more. Once you have created a 
file, you can edit, insert, delete, move, 
view, and print your listing at any time. 
You'll be able to use this flexible utility 
in numerous ways around the home or 
Office, 


Connect the Dots 
By Richard Sands 
Sandy Springs, GA 


The object of this game is to draw the 
fourth side of a square, thus “owning” 
that square. The more squares you 
own, the higher your score. 

The game begins with a5 x 5 grid of 
25 dots. You draw a horizontal or verti- 
Cal line connecting 2 dots, and then the 
computer draws one. You alternate draw- 
ing lines anywhere on the grid until one 
of you can complete a square. The 
game continues until all 16 squares are 
filled. There are five levels of difficulty to 
challenge the whole family. 


You can have these programs and all 
the others that appear in this issue by 
ordering the January Gazette Disk. The 
price is $9.95 plus $2.00 shipping and 
hancling. Send your order to Gazette 
Disk, COMPUTE Publications, 324 
West Wendover Avenue, Suite 200, 
Greensboro, North Carolina 27408. 


= 


JANUARY 1993 COMPUTE  G-39 


HOW TO TYPE IN GAZETTE PROGRAMS 


Each month, Gazette publishes pro- 
grams for the Commodore 128 and 64. 
Each program is clearly marked as be- 
ing written for the 128, 64, or both. Be 
sure to type in the correct version for 
your machine. All 64 programs run on 
the 128 in 64 mode. Be sure to read the 
instructions in the corresponding article. 
This can save time and eliminate any 
questions which might arise after you be- 
gin typing. 

At irregular intervals, we publish two 
programs designed to make typing in 
our programs easier: The Automatic 
Proofreader, for BASIC programs, and a 
128 and 64 version of MLX, for entering 
machine language programs. In order to 
make more room for programs, we do 
not print these handy utilities in every is- 
sue of the magazine. Copies of these pro- 
grams are available on every Gazette 
Disk. If you don't have access to a disk, 
write us, and we'll send you free copies 
of both of these programs. Please en- 
close a stamped, self-addressed enve- 
lope. Write to Typing Aids, COMPUTE’s 
Gazette, 324 West Wendover Avenue, 
Suite 200, Greensboro, North Carolina 
27408. 

When entering a BASIC program, be 
especially careful with DATA statements, 
as they are extremely sensitive to errors. 
A mistyped number in a DATA state- 
ment can cause your machine to “lock 
up” (you'll have no control over the com- 


When You Read: 
{CLR} 
{HOME} 
{UP} 
{DOWN} 


CLR/HOME 


CLRIHOME 
T crsr | 


f_crsr | 


+— CRSR — 


{LEFT} 
{RIGHT} 


+— CRSR — 


{RVS} 
{OFF} 
{BLK} 
{WHT} 
{RED} 
{CYN} 


G-40 COMPUTE JANUARY 1993 


puter). If this happens, the only recourse 
is to turn your computer off and then on, 
erasing what was in memory. This could 
cause you to lose valuable data, so be 
sure to save a program before you run 
it. lf your computer crashes, you can al- 
ways reload the program and look for 
the error. 


Special Characters 

Most of the programs listed in each is- 
sue contain special control characters. 
To facilitate typing in any programs 
from Gazette, use the following listing 
conventions. 

The most common type of control char- 
acters in our listings appear as words 
within braces: {DOWN} means to press 
the cursor-down key; {5 SPACES} 
means to press the space bar five 
times. {RVS} means to enter Reverse 
mode by simultaneously pressing the 
Ctrl key and the 9 key. 

To indicate that a key should be shift- 
ed (hold down the Shift key while press- 
ing another key), the character is under- 
lined. For example, A means hold down 
the Shift key and press A. You may see 
strange characters on your screen, but 
that’s to be expected. If you find a num- 
ber followed by an underlined key en- 
closed in braces (for example, {8 A}), 
type the key as many times as indicated 
(in our example, enter eight shifted A’s). 

If a key is enclosed in special brack- 


When You Read: 
{PUR} 
{GRN} 
{BLU} 
{YEL} H 
{Fi} 
{FP} 
{FB} 
{F } 
{ F5 } 
{ Fo } 
{ F7 } 
{ F8} 


ets, [<>], hold down the Commodore 
key (at the lower left corner of the key- 
board) and at the same time press the in- 
dicated character. 

Rarely, you'll see a single letter of the 
alphabet enclosed in braces. This can 
be entered on the Commodore 64 by 
pressing the Ctrl key while typing the let- 
ter in braces. For example, {A} means to 
press Cirl-A. 


The Quote Mode 

You can move the cursor around the 
screen with the Crsr keys, but you may 
want to move it under program control, 
as in examples like {LEFT} and {HOME} 
in the listings. The only way the comput- 
er can tell the difference between direct 
and programmed cursor control is the 
quote mode. 

Once you press the quote key, you're 
in quote mode. It can be confusing 
when you are in this mode if you 
mistype a character and cursor left to 
change it. You'll see a graphics symbol 
for cursor left. Use the delete key to 
back up and edit the line from the begin- 
ning. Type another quotation mark to get 
out of quote mode. 

If things get too confusing, exit quote 
mode by pressing Return; then cursor 
up to the mistyped line and fix it. If the 
mistake involves cursor movement, how- 
ever, you must press the quote key to 
reenter quote mode. a) 


When You Read: 
< 


|] 


For Commodore 64 Only 
COMMODORE 
E1q 


E2q 
E34 
kag 
Esq 
EJ 
E73 
ks 


COMMODORE 


[coMmonort] 


COMMODORE 


COMMODORE 
COMMODORE) 


[COMMODORE 


OAS 


1 
2 
[3] 
4 
5 
6 
7 
8 


COMMODORE)